Ошибка времени выполнения: "Файл не открыт" - PascalABC.NET (127033)

Узнай цену своей работы

Формулировка задачи:

Помогите пожалуйста исправить ошибку,возможно не замечаю очевидного, пишет Ошибка времени выполнения: Файл не открыт Спасибо

Решение задачи: «Ошибка времени выполнения: "Файл не открыт"»

textual
Листинг программы
var f,g:file of integer;
    n,a: integer;
begin
randomize;
repeat
write('Количество компонент в файле F от 10 до 50 n=');
readln(n);
until n in [10..50];
assign(f,'fileF');
rewrite(f);//открыли для записи
for var i := 1 to n do
 begin
  a:=1+random(30);
  write(f,a);
 end;
reset(f);//открыли для чтения
assign(g,'fileG');
rewrite(g);//открыли второй файл для записи
writeln('Содержание исходного файла');
while not eof(f) do
 begin
  read(f,a);
  if frac(sqrt(a))=0 then write(g,a);
  write(a:4)
 end;
writeln;
close(f);
reset(g);
if filesize(g)=0 then write('Нет полных квадратов')
else
 begin
  writeln('Содержание файла полных квадратов');
  while not eof(g) do
   begin
    read(g,a);
    write(a:4);
   end;
 end;
close(g);
 
end.

Объяснение кода листинга программы

  1. Объявлены переменные: f, g (тип file of integer), n, a (тип integer).
  2. Задается начальное значение для генератора случайных чисел.
  3. В цикле повторяется запрос на ввод количества компонентов в файле F от 10 до 50.
  4. Файл F открывается для записи.
  5. В цикле от 1 до n происходит генерация случайного числа от 1 до 30 и запись его в файл F.
  6. Файл F открывается для чтения.
  7. Файл G открывается для записи.
  8. Выводится содержимое исходного файла F.
  9. В цикле происходит чтение из файла F и проверка на полное квадратное число (если остаток от деления на квадратный корень из числа равен 0). При этом число записывается в файл G.
  10. Выводится содержимое файла G.
  11. Файл F закрывается.
  12. Проверяется размер файла G. Если он равен 0, выводится сообщение Нет полных квадратов.
  13. Иначе, выводится содержимое файла G.
  14. Файл G закрывается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.462 из 5
Похожие ответы