Ошибка в типизированном файле - Pascal ABC

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

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

Работа с одним типизированным файлом. Создать файл и записать в него степени числа 3. Вывести на экран все компоненты числа с четным номером
О возникла идея, а что если так, как думаете пойдет?

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

textual
Листинг программы
var
  f: file of real;
  i, n, l: integer;
  x: real;
begin
  assign(f, '1.dat');
  rewrite(f);
  write('Количество чисел ');
  readln(n);
  l := 0;
  for i:=1 to n do
   begin
    write('ведите степень числа 3 у ', i, ' компонента ');
    readln(x);
    x:=Power(3,x);
    write(f,x);
  end;
  reset(f);
  writeln('Созданный файл');
  while not eof(f) do
   begin
    read(f,x);
    write(x,' ');
   end;
  writeln;
  reset(f);
  writeln('Элементы с четными номерами');
  for i:=0 to filesize(f)-1 do
   begin
    read(f,x);
    if odd(i) then  write(x,' '); //если индекс нечетный, номер четный
   end;
 close(f);
end.

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

  1. Объявляются переменные: f (тип file of real), i, n, l (тип integer), x (тип real).
  2. Задается имя файла для записи и чтения данных — '1.dat'.
  3. Выполняется операция записи в файл 'Количество чисел' и считывается значение переменной n.
  4. Инициализируется переменная l, которая будет использоваться для отслеживания количества чисел, записанных в файл.
  5. Запускается цикл for, который выполняется от 1 до n. Внутри цикла выводится сообщение 'ведите степень числа 3 у ', i, ' компонента ' и считывается значение переменной x. Значение x затем преобразуется в степень числа 3 с помощью функции Power(3,x). Затем выводится значение x в файл '1.dat'.
  6. После завершения цикла for сбрасывается счетчик f и выводится сообщение 'Созданный файл'.
  7. Запускается цикл while, который выполняется до тех пор, пока не будет достигнут конец файла. Внутри цикла считывается значение из файла и выводится пробел.
  8. После завершения цикла while сбрасывается счетчик f и выводится сообщение 'Элементы с четными номерами'.
  9. Запускается цикл for, который выполняется от 0 до filesize(f)-1. Внутри цикла считывается значение из файла и проверяется, является ли индекс нечетным. Если это так, то выводится значение x в файл '1.dat'.
  10. После завершения цикла for закрывается файл '1.dat' с помощью функции close(f).

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

8   голосов , оценка 4.25 из 5