Считывание таблицы чисел из файла в двумерный массив - Pascal

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

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

Написать программу, считывающую таблицу чисел из файла в двумерный массив.

Решение задачи: «Считывание таблицы чисел из файла в двумерный массив»

textual
Листинг программы
var f:text;
    a:array[1..20,1..20] of integer;
    b,m,n,i,j:integer;
    s:string;
begin
assign(f,'input.txt');
reset(f);
m:=1;
n:=0;
while not eoln(f)do //читаем перыую строку, узнаем число столбцов
 begin
  read(f,b);
  n:=n+1;
 end;
readln(f,s);
while not eof(f) do//читаем и считаем строки (1 уже была)
 begin
  readln(f,s);
  m:=m+1;
 end;
close(f);//закроем файл
writeln('Размер матрицы ',m,'x',n);
reset(f); //откроем
for i:=1 to m do //прочитаем матрицу
 begin
  for j:=1 to n do
   begin
    read(f,a[i,j]);
    write(a[i,j]:4);
   end;
  writeln;
 end;
close(f);
end.

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

  1. Переменная f инициализируется как текстовый файл с именем 'input.txt'.
  2. Переменная a инициализируется как двумерный массив целых чисел размером от 1 до 20 в каждой из двух осей.
  3. Переменные b, m, n, i и j инициализируются как целочисленные значения.
  4. Строка s инициализируется как пустая строка.
  5. В блоке while происходит чтение первой строки из файла. Число строк считывается в переменную n.
  6. В блоке while происходит считывание оставшихся строк из файла. Числа считываются в переменную m.
  7. Файл закрывается вызовом close(f).
  8. Выводится размер матрицы m x n.
  9. Файл снова открывается вызовом reset(f).
  10. В цикле for считывается каждая строка матрицы.
  11. В вложенном цикле for происходит считывание каждого элемента строки матрицы.
  12. Выводится значение каждого элемента матрицы.
  13. Выводится символ новой строки.
  14. Файл закрывается вызовом close(f).

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


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

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

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