Помощь - Поиск - Пользователи - Календарь
Полная версия: поиск по введённым данным
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
18192123
Написать программу, которая позволяет найти нужные сведения в телефонном справочнике. Программа должна запрашивать фамилию человека и выводить его телефон. Если в справочнике есть одинаковые фамилии, то программа должна вывести список всех людей, имеющих эти фамилии.

Я так понимаю: вводим запись с полями фамилия и телефон, формируем массив записей. И как по введённой фамилии найти телефон (равенство полей фамилия и телефон?)

А как в решении использовать файлы?
Lapp
Цитата(18192123 @ 9.01.2007 12:01) *

Я так понимаю: вводим запись с полями фамилия и телефон, формируем массив записей. И как по введённой фамилии найти телефон (равенство полей фамилия и телефон?)

А как в решении использовать файлы?

При чем тут равенсво фамилии и телефона? blink.gif Разве такое бывает?.. "Вова 555-4567, к доске!"- так, что ли?
Проходишь в цикле по всем записям и проверяешь на равентсво поля "Фамилия" в записи массива и введенной по запросу фамилии. Если совпало - выводишь всю запись: Имя, Фамилию и телефон.

Файлы - по назначению. Храни в них базу данных, то есть массив записей. Рекомендую только делать его не типизированным, а текстовым (если противное не оговорено условием).
klem4
Поиск -> Базы данных, телефонный справочник, записи, record ...

Записи. Record.

А что тебе не понятно в поиске в массиве записей по одному из полей ? В твоем случае по имени ...
volvo
Цитата
Рекомендую только делать его не типизированным, а текстовым (если противное не оговорено условием).
Угу... Чтобы усложнить себе жизнь еще больше... ЗАЧЕМ текстовый? Парсить лишний раз строку или немеренно раздувать файл, храня информацию каждого поля на отдельной строке? Чем Typed File нас уже не устраивает?
Lapp
Цитата(volvo @ 9.01.2007 12:25) *

Чем Typed File нас уже не устраивает?

Тем, что в программе (по условию) не предусмотрено создание файла. А написать его в любом текстовом редакторе - секунда. Я не стану возражать, если последует развитие программы.. А если нет? То придется делать средства ввода данных и записи файла.. И зачем, если это не требуется в условии?
Впрочем, допускаю, что уважаемая 18192123 (о! я, кажется, начинаю понимать, почему она хотела проверять равенство фамилии телефону! smile.gif), что уважаемая 18192123 привела условие не полностью (как уже бывало).
18192123
Спасибо всем за помощь, теперь я всё поняла!

Гость
18. Написать программу, которая позволяет найти нужные сведения в телефонном справочнике (a:\phone.txt). Программа должна запрашивать фамилию человека и выводить его телефон. Если в справочнике есть одинаковые фамилии, то программа должна вывести список всех людей, имеющих эти фамилии. Рекомендуемый вид экрана во время работы программы приведен ниже.
Поиск в телефонном справочнике. Введите фамилию и нажмите <Enter>.
Для завершения работы с программой сразу после приглашения нажмите <Enter>
—> Петров
В справочнике данных о Петров нет.
—> Иванов
Иванов Вася 578-12-45
Иванов Сергей 244-34-02
ПОмогите сделать
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.