Адаптировать код из Turbo Pascal - PascalABC.NET
Формулировка задачи:
Помогите пожалуйста, код написанный на Turbo Pascal не работает в pascal abc:
Вот задание:
Спойлер
Решение задачи: «Адаптировать код из Turbo Pascal»
textual
Листинг программы
var f,g:text;
n: integer;
a: array[,]of integer;
i,j: integer;
begin
// Открыть файл
assign(f, 'строки.txt');
reset(f);
assign(g, 'столбцы.txt');
rewrite(g);
// Чтение матриц, и запись их по столбцам в новый файл
while not seekeof(f) do
begin
read(f,n);
// Выделение памяти
setlength(a,n,n);
// Чтение матрицы
for i:=0 to n-1 do
for j:=0 to n-1 do
read(f,a[i,j]);
// Запись транспонированой матрицы
write(g,n);
for j:=0 to n-1 do
for i:=0 to n-1 do
write(g,' ',a[i,j]);
writeLn(g,'');
end;
close(f);
close(g);
write('Матрицы переписаны в файл столбцы.txt')
End.
Объяснение кода листинга программы
- Сначала открывается файл
строки.txtдля чтения и файлстолбцы.txtдля записи. - Затем происходит чтение матрицы из файла
строки.txtи запись её по столбцам в файлстолбцы.txt. - В цикле, пока не достигнут конец файла, считывается количество строк матрицы.
- Далее выделяется память под матрицу и происходит чтение матрицы из файла.
- Затем выполняется запись транспонированной матрицы в файл
столбцы.txt. - В конце закрываются файлы
строки.txtистолбцы.txt. - Выводится сообщение об успешном выполнении программы.