Консультация № 138075
27.05.2008, 13:47
0.00 руб.
0 2 2
Дана целочисленная прямоугольная матрица. Определить сумму элементов в тех строках, которые не содержат отрицательных элементов (оформить в виде функции).

Обсуждение

давно
Старший Модератор
31795
6196
27.05.2008, 14:35
общий
это ответ
Здравствуйте, Пухов Никита Евгеньевич!

Программа в приложении.
Если есть хоть один отрицательный элемент в строке - функция возвращает ноль.
Удачи!

Приложение:
const n=5; m=10;type Ta=array[1..n]of integer;var a:array[1..m]of Ta; b,c:integer;function check(d:Ta):integer; var e,f:integer; begin e:=0; {контролируем одну строку} for f:=1 to n do if d[f]>=0 then e:=e+d[f]{суммируем} else begin{сбрасываем сумму и выходим} e:=0; break; end; check:=e; end;begin {создаем массив с помощью генератора случайных чисел} randomize; for b:=1 to m do begin for c:=1 to n do begin{создаем и выводим строку} a[b,c]:=random(20)-5; write(a[b,c]:4); end; {выводим результат работы функции} writeln(‘:=‘:4,Check(a[b]):7); end;end.
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Неизвестный
27.05.2008, 17:14
общий
это ответ
Здравствуйте, Пухов Никита Евгеньевич!
Программа в приложении...
Удачи..

Приложение:
Constn=10;m=8;VarM:array[1..n,1..m] of integer;I,J:integer;Procedure Summa(x:integer);varsum:integer;Y:integer;Begin Sum:=0; For Y:=1 to m do sum:=sum+m[x,y];Writeln(‘Сумма строки № ‘,x,‘ =‘,sum);end;Begin For i:=to n do For j:=1 to m do Begin Write(‘Елемент ‘,i,‘x‘,j,‘ ‘); Readln(m[i,j]); end;For i:=1 to n do For j:=1 to m do If m[i,j]>=0 then If j=m then summa;Readln;end;
Форма ответа