паскаль выдает ошибку - индекс находился вне границ массива. что с этим делать?
program polychivebalo;
type results = record
surname : string [15];
age : 14..16;
ves : 35 .. 68;
rost: 150 .. 197
end;
var list: array[1..5] of results;
i : integer; F1, F2, F3: text;
begin
assign(F1, 'infa.txt');
assign(F2, 'rost.txt');
assign(F3, 'ves.txt');
reset(F1);
rewrite(F2);
rewrite(F3);
Readln(F1); Readln(F1);
for var a:integer:= 1 to 5 do
Readln(F1,list[i].surname); (здесь выдает ошибку)
for i:=1 to 5 do
if(list[i].ves <=60)
then
begin
writeln(list[i].surname, list[i].age,list[i].ves);
writeln(F3,list[i].surname, list[i].age,list[i].ves)
end;
close(F1); close(F2)
end.
Answers & Comments
Не ту переменную указал(сначала твой блок, затем исправление):
Без исправления:
for var a:integer:= 1 to 5 do
Readln(F1,list[i].surname); (здесь выдает ошибку)
Исправление
for var a: integer:=1 to 5 do
Readln(F1,list[a].surname);
Если моё решение вам помогло, отметьте его как лучшее. Спасибо! Удачи!