Помогите плиз написать программу на Delphi....в файле содержится информация о результатах соревнований олимпиады по 10 видам спорта. выдавать список призёров заданной страны по заданному виду спорта. сформировать таблицу результатов олимпиады, выстроить страны с указанием колическтва золотых, серебрянных и бронзовых медалей по убыванию турнирных очков (золотая медаль — 7 очков, серебрянная — 5, бронзовая — 2). виды спорта : академическая гребля, баскетбол, велоспорт, конный спорт, пляжный волейбол, регби, теннис, фехтование, футбол, хоккей на траве. страны: австралия, великобритания, китай, россия, сша. призёры: тут любые имена...что касается файла....то это может быть и текстовый и excel....
Здравствуйте, TMAX, Вы писали:
TMA>Помогите плиз написать программу на Delphi....в файле содержится информация о результатах соревнований олимпиады по 10 видам спорта. выдавать список призёров заданной
Очевидно, подходит время сессии.
TMA>что касается файла....то это может быть и текстовый и excel....
Есть еще много более других форматов файлов.
WBR, Dmitry Beloshistov AKA [-=BDS=-]
Re[2]: Помогите с напсиание програмы на Дельфи
От:
Аноним
Дата:
08.12.09 17:32
Оценка:
Здравствуйте, DarkMaster, Вы писали:
DM>Здравствуйте, TMAX, Вы писали:
TMA>>Помогите плиз написать программу на Delphi....в файле содержится информация о результатах соревнований олимпиады по 10 видам спорта. выдавать список призёров заданной
DM>Очевидно, подходит время сессии.
TMA>>что касается файла....то это может быть и текстовый и excel....
DM>Есть еще много более других форматов файлов.
Я вот просто не очень понимаю принцип чтения строк в файле. Ну,открыл я файл, как осуществляется сам поиск нужных данных...? допустим у меня выбранная страна: Китай, а вид спорта: гребля...в файле форматом .txt:
страна\вид спорта 1.гребля 2.Бокс
1.Россия
золото И.И.Иванов
серебро
бронза С.С.Сидоров
То как я определю что И.И.Иванов — призёр именно гребли и РОссии(если несколько вариантов)?
Здравствуйте, Аноним, Вы писали:
А>Я вот просто не очень понимаю принцип чтения строк в файле. Ну,открыл я файл, как осуществляется сам поиск нужных данных...? допустим у меня выбранная страна: Китай, а вид спорта: гребля...в файле форматом .txt:
А>страна\вид спорта 1.гребля 2.Бокс А>1.Россия А>золото И.И.Иванов А>серебро А>бронза С.С.Сидоров
А>То как я определю что И.И.Иванов — призёр именно гребли и РОссии(если несколько вариантов)?
Может воспользоваться регулярными выражениями и доставать необходимые вам данные с помощью них? Пример использования для дельфи можно посмотреть тут и немноготут.
Здравствуйте, Аноним, Вы писали:
А>Я вот просто не очень понимаю принцип чтения строк в файле. Ну,открыл я файл, как осуществляется сам поиск нужных данных...? допустим у меня выбранная страна: Китай, а вид спорта: гребля...в файле форматом .txt:
А>страна\вид спорта 1.гребля 2.Бокс А>1.Россия А>золото И.И.Иванов А>серебро А>бронза С.С.Сидоров
А>То как я определю что И.И.Иванов — призёр именно гребли и РОссии(если несколько вариантов)?
Я бы смотрел в сторону типизированных файлов. Т.е. файлов, которые содержат данные в виде записей фиксированной длины. Тогда задача сводится к чтению этих данных в список и нескольким сортировкам этого списка по необходимым критериям. Фактически, тебе нужна информация вида:
1) Спортсмен (ФИО)
2) Страна
3) Медаль (если есть, можно сразу указывать количество очков за медаль, 0 — без медали)
4) Вид спорта
Здравствуйте, <Аноним>, Вы писали:
А>Я вот просто не очень понимаю принцип чтения строк в файле. Ну,открыл я файл, как осуществляется сам поиск нужных данных...? допустим у меня выбранная страна: Китай, а вид спорта: гребля...в файле форматом .txt: А>То как я определю что И.И.Иванов — призёр именно гребли и РОссии(если несколько вариантов)?
Представь лучше таблицу в Ёкселе. Каждая строка у тебя — запись о медали. Каждая запись содержит в отдельных ячейках тип медали, вид спорта, имя спортсмена-победителя и его страну. Всего 4 поля в каждой записи.
Теперь перейдем к простому тексту. У тебя каждая строка в файле будет содержать аналогичную запись о медали. Поля записи должны быть разделены каким-то уникальным символом (или набором символов), например табуляцией. Пример текста (тип медали обозначим числом, 1 — золото, 2 — серебро, 3 — бронза):
1 Бокс Иванов Иван Россия
1 Прыжки в воду Ван Туй Китай
2 Метание копья Джон Смит США
...
Тогда тебе надо будет последовательно считать строки из файла, разделить их по символу-разделителю на поля и занести поля в массив записей. Последующая обработка данных — использование простейших алгоритмов над массивом записей.