Запись данных в файл. Вывод информации по определенному критерию
Категория: Delphi/Pascal
2011-08-26 21:52:29
В входной файл записать список студентов группы и информацию про день, месяц и год рождения каждого. (Количество студентов в группе - 25). Вывести на экран информацию про студентов, которые моложе 18 лет по старшинству.
code: #pascal
- uses
- dos;
- type
- tstudent=record
- name,surname:string[10];
- dobyear:1980..2007;
- dobmonth:1..12;
- dobday:1..31;
- end;
- var
- st:array[1..25]of tstudent;
- fst:file of tstudent;
- b:tstudent;
- i,k,y,m,d,dn:word;
- begin
- {Ввод данных}
- for i:=1 to 3 do
- begin
- writeln('Student ',i);
- write('Imya: ');
- readln(st[i].name);
- write('Familiya: ');
- readln(st[i].surname);
- write('Data rojdeniya (dd mm yyyy): ');
- read(st[i].dobday);
- read(st[i].dobmonth);
- read(st[i].dobyear);
- readln;
- end;
- {Сортировка по старшинству}
- for k:=3 downto 2 do
- for i:=1 to k-1 do
- if st[i].dobyear>st[i+1].dobyear then
- begin
- b:=st[i];
- st[i]:=st[i+1];
- st[i+1]:=b;
- end;
- assign(fst,'stud.txt');
- rewrite(fst);
- {Запись данных в файл}
- for i:=1 to 3 do write(fst,st[i]);
- close(fst);
- getdate(y,m,d,dn);{Определение текущей даты}
- {Вывод на экран студентов, возраст которых < 19}
- for i:=1 to 3 do if (y-st[i].dobyear)<19 then
- writeln(st[i].surname,' ',st[i].name,' ',
- st[i].dobday,' ',st[i].dobmonth,' ',st[i].dobyear);
- readln;
- end.
Поделиться: