Цитата:
Сообщение от shrek=)
Определить, какой марки (makra) автомобилей больше всего.
|
Да, Миша - очень Вы меня огорчили. Да что с Вами? Вы же нормально раньше с подобными пустяками справлялись!
Ну ладно.
Прежде всего - я напрочь не понял, что такое teh и зачем там файл, а потому это отключил, чтобы не мешало. А один из возможных вариантов решения задачки таков:
Код:
type
date=record
num:string[20];
marka:string[20];
fam:string[20];
{teh:byte; }
end;
var
sved:array[1..100] of date;
k,n,i:integer;
{f:text;}
j,Jfix,Nm:Integer;
Marks:Array[1..100] of string[20];
N_marks:Array[1..100] of Byte;
Max_marks:Byte;
b:boolean;
begin
{assign (f,'C:/3.txt');
rewrite(f); }
write ('Enter n= ');
readln(n);
Nm:=0;
for i:=1 to n do N_marks[i]:=1;
for i:=1 to n do
begin
b:=true;
write ('nomer= ');
readln (sved[i].num);
write ('marka= ');
readln(sved[i].marka);
For j:=1 to Nm do
if Marks[j]=sved[i].marka then
begin
b:=false;
Jfix:=j;
end;
If b then
begin
Inc(Nm);
Marks[Nm]:=sved[i].marka;
end
else Inc(N_marks[Jfix]);
write ('fam= ');
readln(sved[i].fam);
{ write ('(0,1)teh=');
readln (sved[i].teh);
if sved[i].teh=0 then writeln (f,sved[i].num,' ',sved[i].fam); }
writeln;
end;
{close(f); }
Max_marks:=0;
for j:=1 to Nm do
begin
Writeln(Marks[j],' ',N_marks[j]);
if N_marks[j]>Max_marks then
begin
Max_marks:=N_marks[j];
Jfix:=j;
end;
end;
writeln;
writeln('Maximum:');
writeln(Marks[Jfix],' ',N_marks[Jfix]);
readln;
end.