Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.236.86.184] |
|
Сообщ.
#1
,
|
|
|
Простенькая база данных.
Вводим данные, а потом ищем по имени и выводим на экран. const bookname='phonbook.dat'; type TPhoneBook=record name, { Имя } surname: string[30]; { Фамилия } phone: string[10]; { Телефон } end; var F: file of TPhoneBook; { Файл из записей } PhoneBook: TPhoneBook; { Текущая запись } function Correct: boolean; { Функция прооверки корректности вводимых данных } begin writeln; with PhoneBook do begin write('Введи имя: '); readln(Name); write('Введи фамилию: '); readln(SurName); write('Введи # телефона: '); readln(Phone); Correct:=(Name<>'') and (SurName<>'') and (Phone<>''); end; end; procedure CreateBook; { Создание файла с записями } begin assign(f,bookname); {$I-} rewrite(F); { создаём файл } {$I+} if IOresult=0 then { Если не было ошибок, то } { добавлять записи в файл, пока корректно вводим данные } while Correct do write(F, PhoneBook); Close(F); { Закрываем файл } end; procedure Find; { Поиск по имени и вывод данных на экран } var who: string[30]; found: boolean; begin write('Кого ищем? '); readln(who); if who='' then exit; found:=false; assign(f,bookname); {$I-} reset(F); { Открываем наш файл } {$I+} if IOresult=0 then with PhoneBook do while Not EOF(F) do { Ищем, пока не конец файла } begin read(F,PhoneBook); { чтение записи из файла } if name=who then { Нашли такого/ую } begin writeln(Name:30,SurName:30,Phone:10); { Выводим данные на экран форматированным выводом} found:=true; end; end; Close(f); { Закрываем файл } if Not Found then writeln(Who,' не найден(а).'); end; begin CreateBook; Find; writeln(#13#10'Конец работы! Жми на Enter.'); readln; end. Исходник: Прикреплённый файлSimpleDB.zip (0.92 Кбайт, скачиваний: 641) |