Krapusta
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Нужен перевод с паскаля в фортран. Дело в том, что я в фортран почти незнаю. Помогите плиз) заранее спасибо.) program proga; type arr = array [1..10,1..10] of integer; var a:arr; {исходный массив} j,i,m,n:integer; min: integer; {номер строки с минимальным приращением} max: integer; {номер строки с максимальным приращением} procedure readmatr(var a:arr); var j,i:integer; f: text; begin assign (f, 'c:\1.txt'); {открытие файла с числовым массивом} reset(f); for i:=1 to n do begin for j:=1 to m do begin read(f,a[i,j]); end; end; close(f); end; procedure vichmin(a:arr; var min:integer); var jj,i,g,t:integer; x: array[1..10] of integer; k:array[1..10] of integer; {массив с значениями минимального приращения каждой строки} begin {вычисление значения приращения} for i:=1 to n do begin for j:=1 to m-1 do begin x[j]:=a[i,j]-a[i,j+1]; end; for jj:=1 to m-2 do begin if x[jj]<x[jj+1] then t:=x[jj] else t:=x[jj+1] end; {запись наименьшего значения приращения в массив} k[i]:=k[i]+t; end; {нахождение и вывод минимального значения приращения} for i:=1 to n-1 do begin if k[i]<k[i+1] then min:=i else min:=i+1 end; writeln ('минимальное значение приращения в строке №:',min); for i:=1 to n do begin write(a[min,i],' ') end; end; procedure vichmax(a:arr; var max:integer); var ii,i,g,t:integer; x: array[1..10] of integer; o:array[1..10]of integer; {массив с значениями максимального приращения каждой строки} begin {вычисление значения приращения} for i:=1 to n do begin for j:=1 to m-1 do begin x[j]:=a[i,j]-a[i,j+1]; end; for ii:=1 to m-2 do begin if x[ii]>x[ii+1] then t:=x[ii] else t:=x[ii+1] end; {запись наибольшего значения приращения в массив} o[i]:=o[i]+t; end; {нахождение и вывод максимального значения приращения} for i:=1 to n-1 do begin if o[i]>o[i+1] then max:=i else max:=i+1 end; writeln ('максимального значение приращения в строке №:',max); for i:=1 to n do begin write(a[max,i],' ') end; end; begin writeln ('введите кол-во строк'); readln(n) ; writeln ('введите кол-во столбцов'); readln(m); readmatr(a); vichmin(a,min); writeln; vichmax(a,max); end. |