Я делал так:
Type Game = Record
Name:String[20];
Price:0..1000000;
AgeMin:0..4;
AgeMax:5..12;
End;
PriceList=Array [1..7] of Game;
Const
a:PriceList=((Name:'Kykla';Price:150000;AgeMin:2;AgeMax:7;),
(Name:'Konstryktor';Price:195000;AgeMin:2;AgeMax:11;),
(Name:'Kybuku';Price:9000;AgeMin:1;AgeMax:11;),
(Name:'Konstryktor';Price:210000;AgeMin:2;AgeMax:12;),
(Name:'M`yach';Price:250000;AgeMin:2;AgeMax:12;),
(Name:'Konstryktor';Price:190000;AgeMin:2;AgeMax:10;),
(Name:'Pazlu';Price:8000;AgeMin:2;AgeMax:12;));
Var myFile:File of Game;
G:game;
i:integer;
max:integer;
begin
Assign(myFile,'f.txt');
ReWrite(myFile);
For i:=0 to 7 Do
Write(MyFile,a[i]);
CloseFile(myFile);
FileMode:=fmOpenRead;
Writeln('-------------------------------------------------------') ;
Writeln('Name':25,'|','Price':20,'|','AgeMin':4,'|','Agemax':4);
For i:=1 to 7 do
Writeln(a[i].Name:25,'|',a[i].Price:20,'|',a[i].AgeMin:7,'|',a[i].Agemax:4);
Writeln('-------------------------------------------------------') ;
Reset(MyFile);
Read(myFile,G);
CloseFile(myFile);
max:=0;
For i:=0 to 7 Do
Begin
If (G.Name='Konstryktor') and (G.Price > max) Then max:=G.Price;
End;
For i:=1 to 7 do
Writeln(G.Name:25,'|',g.Price:20,'|');
Writeln('-------------------------------------------------------') ;
readln;
end.
В итоге у меня вместо вывода самого дорогого конструктора выходит такое:
В чем заключается моя ошибка?