Создать массив, содержащий следующие сведения: фамилию владельца, марку автомобиля, номерной знак, год выпуска, объем двигателя, цвет

Вывести марку автомобилей с наибольшим объемом двигателя, выпущенных до определенного года. На экран выводить исходные данные в виде таблицы с использованием символов псевдографики, а также результаты работы в наглядном виде.

code: #pascal
Program PascalGuru;
uses crt;
 
type m = record
          famil:string[12];
          marka:string[12];
          nznak:string[8];
          god  :integer;
          obiem:real;
          cvet :string[10];
         end;
 
var massiv:array[1..50] of m;
    n:integer;
{--------------------------------------------------------}
procedure vyvod;
var i,god,k:integer;
    max:real;
begin
clrscr;
 
 
{*************************************}
write(chr(201));
for i:=1 to 57 do write(chr(205));
write(chr(187)); writeln;
 
for i:=1 to n do
    begin
    write(chr(186),massiv[i].famil:12);
    write(chr(186),massiv[i].marka:12);
    write(chr(186),massiv[i].nznak:8);
    write(chr(186),massiv[i].god:4);
    write(chr(186),massiv[i].obiem:8:2);
    write(chr(186),massiv[i].cvet:8);
    write(chr(186));
    writeln;
    end;
 
write(chr(200));
for i:=1 to 57 do write(chr(205));
write(chr(188)); writeln;
{*************************************}
writeln;
writeln;
write('Naiti avto s naibolishim obiemom dvigatelya, vypuschennyh do: ');
readln(god);
 
for i:=1 to n do
 if massiv[i].god<=god then begin k:=i; break; end;
 
max:=massiv[k].obiem;
 
for i:=k+1 to n do
 if massiv[i].god<=god then
  if massiv[i].obiem>max then max:=massiv[i].obiem;
 
 
 
clrscr;
{*************************************}
write(chr(201));
for i:=1 to 57 do write(chr(205));
write(chr(187)); writeln;
 
for i:=1 to n do
 if massiv[i].obiem=max then
    begin
    write(chr(186),massiv[i].famil:12);
    write(chr(186),massiv[i].marka:12);
    write(chr(186),massiv[i].nznak:8);
    write(chr(186),massiv[i].god:4);
    write(chr(186),massiv[i].obiem:8:2);
    write(chr(186),massiv[i].cvet:8);
    write(chr(186));
    writeln;
    end;
 
write(chr(200));
for i:=1 to 57 do write(chr(205));
write(chr(188)); writeln;
{*************************************}
 
end;
{--------------------------------------------------------}
procedure vvod;
var i:integer;
begin
clrscr;
write('Skoliko zapisei zhelaete vvesti v massiv: ');  readln(n);
 
for i:=1 to n do
    begin
    clrscr;
    writeln('Vvod ',i,' zaprisi...');  writeln;
    write('Familiya vladelitsa: ');    readln(massiv[i].famil);
    write('marka avtomobilya: ');      readln(massiv[i].marka);
    write('nomernoi znak: ');          readln(massiv[i].nznak);
    write('god vypuska: ');            readln(massiv[i].god);
    write('obiem dvigatelya: ');       readln(massiv[i].obiem);
    write('tsvet: ');                  readln(massiv[i].cvet);
    end;
 
vyvod;
end;
{--------------------------------------------------------}
begin
 
vvod;
 
readln;
end.      
Поделиться:

Похожие статьи: