|
Вопрос # 2 184/ вопрос открыт / |
|
Здравствуйте, эксперты!
помогите пожалуйста!не могу составить прогу((( обработка данных типа запись. нужно составить программу создания даных типа запись в виде таблицы, с последующей записью её в текстовый файл для создания справочной информации.
в программе нужно предусмотреть следующие подпрограммы-процедуры:
1) формирование 5-7 элементов массива типа запись с полями, указанными в таблице, с последующей их записью в текстовый файлж
2)вывод на экран элементов массива записей в соответствии с заданием.
3) задание: список абонентов телефонной сети: номер абонента,ФИО,адрес,номер телефона(выводить по шаблону ##-##-##), долг по оплате. Распечатать данные про абонентов, телефонные номера которых начинаются на 22 и которые имеют найбольший долг.
Приложение: Переключить в обычный режим- unit Unit1;
- interface
- uses SysUtils;
- type abonent=record
- nomer:byte;
- Fio:string[40];
- adres:string[80];
- tel:string[8];
- dolg:real;
- end;
- writeln(nomer,'');
- writeln (Fio,'');
- writeln (adres,'')';
- writeln (tel,'');
- writeln (dolg,'');
- end;
- var f_abonent:file of abonent;
- a:abonent;
- i,k:byte;
- procedure sozdat;
- implementation
- procedure sozdat;
- begin
- writeln ('input nomer abonenta');
- readln (nomer);
- with a do
- begin
- writeln ('input Fio of abonent');
- readln (Fio);
- writeln ('input adres of abonent');
- readln (adres);
- writeln ('input tel of abonent:##-##-##');
- readln (tel);
- writeln ('input dolg of abonent');
- readln (dolg);
- write (f_abonent,a);
- end;
- end.
- unit Unit2;
- interface
- uses SysUtils;
- type abonent=record
- nomer:byte;
- Fio:string[40];
- adres:string[80];
- tel:string[8];
- dolg:real;
- end;
- var f_abonent:file of abonent;
- a:abonent;
- i,k:byte;
- procedure poisk;
- implementation
- procedure poisk;
- begin
- Maxdolg:=1;
- while not (Eof(f_abonent)) do
- begin
- with a do
- begin
- read (f_abonent,a);
- if (a.tel[1]='2') and (a.tel[2]='2')
- with a do
- begin
- writeln(nomer,'');
- writeln (Fio,'');
- writeln (adres,'')';
- writeln (tel,'');
- writeln (dolg,'');
- end;
- if a.dolg>Maxdolg then
- Maxdolg:=a.dolg;
- end;
- close (f_abonent);
- reset (f_abonent);
- while not eof (f_abonent) do begin
- if a.dolg=Maxdolg then
- with a do
- begin
- writeln(nomer,'');
- writeln (Fio,'');
- writeln (adres,'')';
- writeln (tel,'');
- writeln (dolg,'');
- end.
- program zapis;
- interface
- uses SysUtils,Unit1,unit2;
- var f_abonent:file of abonent;
-
 |
Вопрос задала: Nostalgia (статус: Посетитель)
Вопрос отправлен: 10 декабря 2008, 22:28
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 2; последнее сообщение — 11 декабря 2008, 21:26; участников в обсуждении: 2.
|
Мережников Андрей (статус: Абитуриент), 11 декабря 2008, 05:10 [#1]:
Консольное приложение - это принципиально??? В Delphi есть более развитые средства для ввода/вывода информации.
Если объявляется файл типа file of abonent - это уже не текстовый файл. Определитесь с типом файла.
|
|
Nostalgia (статус: Посетитель), 11 декабря 2008, 21:26 [#2]:
дело в том, что я только начинаю осваивать среду delphi и поэтому начинаю курс с консольного приложения. что касается типа файла, он-------типизированный.надеюсь на вашу помощь. заранее благодарю
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|