Предмет: Информатика, автор: juk8

Найти ошибку в коде, не записывает данные в файл.

УСЛОВИЕ: Создайте два файла, содержащих сведения о десяти нападающих хоккейных команд: «Динамо» и «Спартак» соответственно: имена нападающих, число заброшенных ими шайб, сделанных голевых передач, заработанное штрафное время.

program hockey;

uses crt;

type
hk = record
name : string[20];
shyiba: record
gol_per : integer;
gol : integer;
straf_time : integer;
end;
end;

var
hokiyArray : array[1..100] of hk;
hokiyArray01 : array[1..100] of hk;
i,n : integer;
f,f1: text;
s : string;

begin
Assign(f,'D:/test.txt');
rewrite(f);
write('ДИНАМО ');
write('Введите количество нападающих : ');
readln(n);

for i:=1 to n do begin
writeln('--------------------------');
writeln(' Введите данные ',i, 'нападающего');
write(' Введите имя : '); readln( hokiyArray[i].name);
writeln('--------------------------');

writeln;
write(' Количество заброшеніх шайб : '); readln( hokiyArray[i].shyiba.gol_per);
write('Количество голевіх передач '); readln( hokiyArray[i].shyiba.gol);
write(' Количество штрафного времени '); readln(hokiyArray[i].shyiba.straf_time);

writeln;
end;

writeln;

with hokiyArray[i] do
for i:=1 to n do begin
writeln('ДИНАМО',f,name,' ',shyiba.gol_per,' ',shyiba.gol,' ',shyiba.straf_time);
close(f);

end;


begin
Assign(f1,'D:/test01.txt');
rewrite(f1);
write('СПАРТАК ');
write('Введите количество нападающих : ');
readln(n);

for i:=1 to n do begin
writeln('--------------------------');
writeln(' Введите данные ',i, 'нападающего');
write(' Введите имя : '); readln( hokiyArray01[i].name);
writeln('--------------------------');

writeln;
write(' Количество заброшеніх шайб : '); readln( hokiyArray01[i].shyiba.gol_per);
write('Количество голевіх передач '); readln( hokiyArray01[i].shyiba.gol);
write(' Количество штрафного времени '); readln(hokiyArray01[i].shyiba.straf_time);

writeln;
end;

writeln;

with hokiyArray01[i] do
for i:=1 to n do begin
writeln('СПАРТАК',f1,name,' ',shyiba.gol_per,' ',shyiba.gol,' ',shyiba.straf_time);
close(f1);

end;
end;

end.

Ответы

Автор ответа: Аноним
0
program hockey;

uses
  crt;

type
  hk = record
    name: string[20];
    shyiba: record
      gol_per: integer;
      gol: integer;
      straf_time: integer
    end
  end;

var
  hokiyArray, hokiyArray01: array[1..100] of hk;
  i, n: integer;
  f: text;

begin
  Assign(f, 'test.txt');
  Rewrite(f);
  Writeln('ДИНАМО ');
  Write('Введите количество нападающих : '); Readln(n);
  for i := 1 to n do
  begin
    Writeln('--------------------------');
    Writeln(' Введите данные ', i, 'нападающего');
    Write(' Введите имя : '); Readln(hokiyArray[i].name);
    Writeln('--------------------------');
    Writeln;
    Write(' Количество заброшеніх шайб : ');
    Readln(hokiyArray[i].shyiba.gol_per);
    Write('Количество голевіх передач ');
    Readln(hokiyArray[i].shyiba.gol);
    Write(' Количество штрафного времени ');
    Readln(hokiyArray[i].shyiba.straf_time);
    Writeln
  end;
  Writeln;
  for i := 1 to n do
  begin
    with hokiyArray[i] do
      Writeln(f, 'ДИНАМО', name, ' ', shyiba.gol_per, ' ', shyiba.gol,
        ' ', shyiba.straf_time);
  end;
  Close(f);
 
  Assign(f, 'test01.txt');
  Rewrite(f);
  Writeln('СПАРТАК ');
  Write('Введите количество нападающих : '); Readln(n);
  for i := 1 to n do
  begin
    Writeln('--------------------------');
    Writeln(' Введите данные ', i, 'нападающего');
    Write(' Введите имя : '); Readln(hokiyArray01[i].name);
    Writeln('--------------------------');
    Writeln;
    Write(' Количество заброшеніх шайб : ');
    Readln(hokiyArray01[i].shyiba.gol_per);
    Write('Количество голевіх передач ');
    Readln(hokiyArray01[i].shyiba.gol);
    Write(' Количество штрафного времени ');
    Readln(hokiyArray01[i].shyiba.straf_time);
    Writeln
  end;
  Writeln;
  for i := 1 to n do
  begin
    with hokiyArray01[i] do
      Writeln(f, 'СПАРТАК', name, ' ', shyiba.gol_per, ' ', shyiba.gol,
        ' ', shyiba.straf_time);
  end;
  Close(f)
 
end.

Похожие вопросы