Паскаль. 12.Дан массив А(3*4). Найти сумму первых отрицательных элементов в каждом столбце. 13.Даны два массива А(3*3) и В(3*3). Вывести на экран тот из них, у которого меньше сумма элементов главной диагонали. 17.Дан мас...
Паскаль. 12.Дан массив А(3*4). Найти сумму первых отрицательных элементов в каждом столбце. 13.Даны два массива А(3*3) и В(3*3). Вывести на экран тот из них, у которого меньше сумма элементов главной диагонали. 17.Дан массив А(3*4). Заменить все отрицательные элементы на противоположные.
Ответ(ы) на вопрос:
Гость
{12. Дан массив А(3*4). Найти сумму первых отрицательных элементов в каждом столбце.}
uses crt;
const N=3;
M=4;
var a: array [1..N,1..M] of real;
x,y:integer;
min,sum:real;
begin
sum:=0;
for x:=1 to N do begin
for y:=1 to M do begin
a[x,y]:=random(10)-5;
write(a[x,y]:3:0);
end;
writeln;
end;
writeln;
for y:=1 to M do begin
min:=0;
for x:=N downto 1 do
if a[x,y]<0 then min:=a[x,y];
sum:=sum+min;
end;
writeln;
writeln('Сумма первых отрицательных элементов в каждом столбце: ',sum);
end.
---
{13. Даны два массива А(3*3) и В(3*3). Вывести на экран тот из них, у которого меньше сумма элементов главной диагонали.}
uses crt;
const N=3;
var a,b: array [1..N,1..N] of integer;
x,y,sum1,sum2: integer;
begin
sum1:=0; sum2:=0;
for x:=1 to N do begin
for y:=1 to N do begin
a[x,y]:=random(10);
if x=y then sum1:=sum1+a[x,y];
write(a[x,y]:3);
end;
writeln;
end;
writeln;
for x:=1 to N do begin
for y:=1 to N do begin
b[x,y]:=random(10);
if x=y then sum2:=sum2+b[x,y];
write(b[x,y]:3);
end;
writeln;
end;
if sum1<>sum2 then begin
writeln('Сумма элементов главной диагонали меньше в массиве: ');
for x:=1 to N do begin
for y:=1 to N do
if sum1>sum2 then write(b[x,y]:3)
else write(a[x,y]:3);
writeln;
end;
end;
if sum1=sum2 then writeln('Сумма элементов главной диагонали одинакова');
end.
---
{17.Дан массив А(3*4). Заменить все отрицательные элементы на противоположные.}
uses crt;
const N=3;
M=4;
var a: array [1..N,1..M] of real;
x,y:integer;
begin
for x:=1 to N do begin
for y:=1 to N do begin
a[x,y]:=random(10)-5;
write(a[x,y]:3:0);
if a[x,y]<0 then a[x,y]:=-a[x,y];
end;
writeln;
end;
writeln;
for x:=1 to N do begin
for y:=1 to N do
write(a[x,y]:3:0);
writeln;
end;
end.
Гость
Program asd;
USES crt;
Const n=3;
Const m=3;
Var A,B:array [1..n, 1..m] of integer;
k,s,i,j,q:integer;
BEGIN
Clrscr;
For i:=1 to n do
begin
for j:=1 to m do
begin
A[i,j]:=random(9);
write(' ',A[i,j]:2);
end;
Writeln;
end;
For i:=1 to n do
begin
for j:=1 to m do
begin
If i=j then S:=S+A[i,i];
end;
end;
Writeln('Matriza A: ',s);
For i:=1 to n do
begin
for j:=1 to m do
begin
B[i,j]:=random(9);
Write(' ',B[i,j]:2);
end;
Не нашли ответ?
Похожие вопросы