Задача на списки, Создание из файла списка |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Задача на списки, Создание из файла списка |
-=Считывающий=- |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 31 Пол: Мужской Реальное имя: Михаил Репутация: -1 |
Доброе время суток!
Вот значится какая проблемма, есть файл следующе структуры: <Фамилия_1> <Ответ1> <Ответ2> ... <Фамилия_n> <Ответ1> <Ответ2> , причем у каждого человека по два РАЗНЫХ ответа. Нужно найти все разные ответы, и найти кол-во повторов каждого из них. В принципе уже понял как что делать, но, неповерите, запоролся в самом начале))) Решил создать массив строк, чисто для удобства и вот тут я появилась проблемма. Происходит следующее, в процессе формирования - все ок, но как только процедура по созданию массива заканчивает работу, весь массив смещается на одну позицию вниз, т.е. 1 становится 2, 2 -3 и т.д. Вот код и файл БД)), подскажите, в чем проблемма? Прикрепленные файлы L_2_41.PAS ( 5.02 килобайт ) Кол-во скачиваний: 309 1.TXT ( 61 байт ) Кол-во скачиваний: 277 |
мисс_граффити |
Сообщение
#2
|
просто человек Группа: Пользователи Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: 55 |
смотри, что мы должны делать:
1. По моей задумке. Читаем ответ из файла. Сравниваем его с первым значением из списка. Совпало? +1 во второе поле. Не совпало? Переходим на следующий элемент. Совпало?... Список кончился (т.е. в поле Next нуль-указатель), а элемент так и не нашелся? Добавляем новый такой элемент. Читаем следующий ответ из файла. Для реализации потребуется: цикл while, выход из которого происходит в случае окончания списка или нахождения элемента; рабочий указатель на текущий элемент, указатель на начало списка. 2. что предлагаешь ты. Читаем ответ. Проходим список в поиске его. Если не нашли, добавляем и ищем по всему файлу вниз. Доходим до конца файла. Закрываем файл. Открываем файл. Перематываем до исследованного элемента. Идем вниз. Читаем следующий элемент. Опять изучаем список.... Что больше нравится - то и реализуй. Я не вижу смысла в таких сложностях - ходить по списку ведь приходится не меньше... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Текстовая версия | 1.06.2024 6:57 |