Для матрицы Т(m, n), 1<(m, n)<10, вычислить сумму всех положительных элементов. Переставить строки по убыванию значений максимальных элементов строк
М
1. Заголовок темы должен быть информативным.
Переименуй, пожалуйста.
neic
8.12.2007 16:28
1. Пересчитать сумму:
{после ввода матрицы} s:=0; For i:=1 to n do begin For j:=1 to m do If a[i,j]>0 then s:=s+a[i,j] end;
2. Как я понял, нужно поменять строки от большого к меньшему или всю матрицу по убыванию сделать? Сделаю первый вариант, т.к. он более правдоподобен.
L:=A[1]; A[1]:=MIN; A[K]:=L;
for u:=1 to n do begin FOR I:=2 TO m DO BEGIN FOR J:=I TO m DO BEGIN IF A[U,I]>A[U,J] THEN BEGIN L:=A[U,I]; A[U,I]:=A[U,J]; A[U,J]:=L; END; END; END;
Вроде всё выглядит так. Покрайней мере одномерный массив работает. Буду вопросы пиши сюда или ЛС.
asu2006
10.12.2007 11:20
Вот код
Код
const c=10; var T: array[1..c,1..c] of integer; s,x,y:integer; m,n:byte; begin writeln('Matrix 1<(n,m)<10)'); write('chislo strok ='); readln(n); write('chislo ctolbcov ='); readln(m); s:=0; if (n>1) and (m<10) then begin writeln; writeln('Vvod elementov matrix');
For x:=1 to n do For y:=1 to m do begin write('T[',x,',',y,']='); readln(T[x,y]); if T[x,y]>0 then s:=s+t[x,y]; end; end; writeln; writeln('Summa polojitelnih elementov =',s); writeln; writeln('Matrix'); for x:=1 to n do begin for y:=1 to m do write(T[x,y],' '); writeln; end;
Помогите доделать.
Цитата
Переставить строки по убыванию значений максимальных элементов строк
Michael_Rybak
10.12.2007 18:31
!
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.