Последний раз редактировалось Liagv 08.12.2014, 20:32, всего редактировалось 1 раз.
Нужно написать программу, которая транспонирует матрицу. В первой строке ввода программа получит натуральные числа M и N, где М - количество строк, а N - количество столбцов. Далее (следующие строки ввода)следует М строчек, каждая именно с N целыми числами, которые будут являтся членами матрицы. На выводе программа должна вывести транспонированную матрицу. М и N не больше 150, а все числа:=integer Например: Ввод: 2 3 1 2 3 4 5 6
Вывод: 1 4 2 5 3 6
Вот как это решал я (хоть убейте, не понимаю где ошибки). uses crt; const nmax=150; type a=array[1..nmax,1..nmax] of integer; var i,j,m,n,x:integer; a1:a; begin clrscr; writeln('n'); readln(n); for n:=1 to nmax do repeat writeln('m'); readln(m); for m:=1 to nmax do repeat for i:= 1 to nmax do begin for j:=1 to nmax do write(a1[i,j]:3); writeln end; for i:=2 to nmax do for j:=1 to i-1 do begin x:=a1[i,j]; a1[i,j]:=a1[j,i]; a1[j,i]:=x end; writeln('transponovana matice'); for i:=1 to nmax do begin for j:=1 to nmax do write(a1[i,j]:3); writeln end; readln end.
|