frost12
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Corsairs еще насчет той задачки: в двумерных массивах A[N*M] и B[L*M] проанализировать последний элемент каждой строки. Если он больше числа на побочной диагонали, то поменять их местами, иначе эту строку рассортировать по убыванию. все хорошо и правильно, только оказывается обязательно нужно было везде использовать процедуры, не только в сортировке, но еще и в выводе массивов. const n=4; type mas=array[1..n,1..n] of integer; var a,b:mas; i,j,k:integer; procedure sort(k:integer; var z:mas); var r,x,y:integer; begin {сортируем строку по убыванию} for x:=1 to n-1 do for r:=x+1 to n do begin if z[k,x]<z[k,r] then begin y:=z[k,x]; z[k,x]:=z[k,r]; z[k,r]:=y; end; end; end; begin randomize; for i := 1 to n do for j := 1 to n do begin a[i,j]:=50-random(100); b[i,j]:=50-random(100); end; writeln('Massiv A'); - \тут должна быть процедура | for i:=1 to n do | begin | for j:=1 to n do | write(a[i,j]:4); | writeln; | end; / writeln('Massiv B'); - \ тут должна быть процедура | for i:=1 to n do | begin | for j:=1 to n do | write(b[i,j]:4); | writeln; | end; / for i:=1 to n do begin j:=n+1-i; {проверяем условие} if a[i,j]<a[i,n] then begin {меняем местами эти элементы} k:=a[i,j]; a[i,j]:=a[i,n]; a[i,n]:=k; end else begin {вызываем процедуру сортировки строки i} sort(i,a); end; end; for i:=1 to n do begin j:=n+1-i; {проверяем условие} if b[i,j]<b[i,n] then begin {меняем местами эти элементы} k:=b[i,j]; b[i,j]:=b[i,n]; b[i,n]:=k; end else begin {вызываем процедуру сортировки строки i} sort(i,b); end; end; WriteLn('Massiv A'); - \тут должна быть процедура | for i:=1 to n do | begin | for j:=1 to n do | write(a[i,j]:4); | writeln; | end; / writeln('Massiv B'); - \тут должна быть процедура | for i:=1 to n do | begin | for j:=1 to n do | write(b[i,j]:4); | writeln; | end; / readln; end. это все с чем ко мне придрались. Можешь и тут помочь ? ))) |