Паскаль, помогите пж (даю 30 баллов) ​

Приложения:

Ответы

Ответ дал: Agentgirls
0

Ответ:

Note = Record

          Name: string;

          Phone: string;

          Day: array[1..3] of word;

         End;

0

FeLiPoN

0 / 0 / 0

Регистрация: 26.09.2010

Сообщений: 30

08.12.2010, 15:45  [ТС]  3

Цитата Сообщение от TAVulator Посмотреть сообщение

Pascal

Note = Record

          Name: string;

          Phone: string;

          Day: array[1..3] of word;

         End;

BabushkaTP

2 / 2 / 5

Регистрация: 21.11.2013

Сообщений: 20

07.02.2014, 12:05  4

Pascal

program zad;

uses crt;

const n=8;

type note=record

         fm:string[20];

         im:string[20];

         tl:string[20];

         dt:array[1..3] of word;

         end;

var sp:array[1..n]of note;

   i,j,f:integer;

   fam:string[20];

   buf:note;

begin

clrscr;

writeln('Введите данные об ',n,' абонентах:');

for i:=1 to n do

 begin

   writeln('Абонент ',i);

   write(' Фамилия: ');readln(sp[i].fm);

   write(' Имя: ');readln(sp[i].im);

   write(' Телефон: ');readln(sp[i].tl);

   writeln(' Дата рождения: ');

   repeat

   write('  день(1..31): ');readln(sp[i].dt[1]);

   until sp[i].dt[1] in [1..31];

   repeat

   write('  месяц(1..12): ');readln(sp[i].dt[2]);

   until sp[i].dt[2] in [1..12];

   repeat

   write('  год(1900..2000): ');readln(sp[i].dt[3]);

   until (sp[i].dt[3]>=1900)and(sp[i].dt[3]<=2000);

 end;

clrscr;

{сортировка массива записей по алфавиту}

for i:=1 to n-1 do

for j:=i+1 to n do

if sp[i].fm>sp[j].fm then

begin

 buf:=sp[i];

 sp[i]:=sp[j];

 sp[j]:=buf;

end;

writeln('Список абонентов:':45);

writeln;

writeln('-------------------------------------------------------');

writeln('|   Фамилия   |    Имя    |  Телефон  | Дата рождения |');

writeln('-------------------------------------------------------');

for i:=1 to n do

begin

 gotoXY(1,whereY);write('| ',sp[i].fm);

 gotoXY(15,whereY);write('| ',sp[i].im);

 gotoXY(27,whereY);write('| ',sp[i].tl);

 gotoXY(39,whereY);

 write('| ',sp[i].dt[1],'.',sp[i].dt[2],'.',sp[i].dt[3]);

 gotoXY(55,whereY); writeln('|');

end;

writeln('-------------------------------------------------------');

repeat

writeln('Введите фамилию для поиска:');

readln(fam);

f:=0;

for i:=1 to n do

if sp[i].fm=fam then

begin

  f:=1;

  write(sp[i].fm,' ',sp[i].im,' ',sp[i].tl,' ');

  write(sp[i].dt[1],'.',sp[i].dt[2],'.',sp[i].dt[3]);

end;

if f=0 then writeln('Такой фамилии нет. Повторите ввод.');

until f=1;

readln

end.

0

Объяснение:

Вас заинтересует