Работа с файлами, Обработка текстового файла |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Работа с файлами, Обработка текстового файла |
npl |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: http://npfiles.ru Репутация: -1 |
Даны названия N различных обществ (N заданное число), фигуристы которых участовали в соревновании. О каждом фигуристе известно: фамилия, название общества и 10 оценок за его выступление. Требуется для каждого спортивного общества определить фигуриста, показавшего наивысший результат, считая его единственным. Баллы, полученные фигуристом, подсчитываются следующим образом: максимальная и минимальная оценки отбрасываются, а из остальных формируется средняя. При вводе данных обеспечить уникальность наименований обществ и обязательную принадлежность фигуриста к одному из них.
|
npl |
Сообщение
#2
|
Новичок Группа: Пользователи Сообщений: 21 Пол: Мужской Реальное имя: http://npfiles.ru Репутация: -1 |
Я сам составлял файл. Задачу надо решать для конкретного своего файла.
Добавлено через 13 мин. andriano, может уже предложите конкретные решения, а не пустые слова? |
andriano |
Сообщение
#3
|
Гуру Группа: Пользователи Сообщений: 1 168 Пол: Мужской Реальное имя: Сергей Андрианов Репутация: 28 |
Я сам составлял файл. Задачу надо решать для конкретного своего файла. (наверное, из меня вышел бы очень вредный преп. Цитата Добавлено через 13 мин. andriano, может уже предложите конкретные решения, а не пустые слова? Если подробнее, то я могу порекомендовать следующий алгоритм разбора строки: 1. Удаляем пробелы в начале. 2. Находим позицию разделителя L. 3. Если L = 0, выводим сообщение об ошибке, иначе продолжаем работу. 4. Копируем в поле имени L-1 символов. 5. Удаляем L символов в начале строки. 6. Удаляем пробелы в начале. 7. Находим позицию разделителя L. 8. Если L = 0, выводим сообщение об ошибке, иначе продолжаем работу. 9. Копируем в поле названия команды L-1 символов. 10. Удаляем L символов в начале строки. 11. Цикл длиной 9. 12. Удаляем пробелы в начале. 13. Находим позицию разделителя L. 14. Если L = 0, выводим сообщение об ошибке, иначе продолжаем работу. 15. Копируем во временную строку L-1 символов. 16. Пытаемся преобразовать эту строку в число. 17. Если преобразование не удалось - выводим сообщение об ошибке, иначе - продолжаем работу. 18. Удаляем L символов в начале строки. 19. Конец цикла. 20. Удаляем пробелы в начале. 21. Пытаемся преобразовать оставшуюся часть строки в число. 22. Если преобразование не удалось - выводим сообщение об ошибке, иначе - продолжаем работу. В качестве ваианта: 11. Дописываем разделитель в конец строки. 11а. Цикл длиной 10. строки 20-22 - не нужны. |
Текстовая версия | 28.04.2024 22:15 |