Фотий
5 год назад
Массивы Написать программу в PascalABC.NET Задание: Даны X1, ..., X10 и Y1, ... Y10. Сравнить их суммы и если сумма Х будет больше суммы Y, то все Y обнулить, иначе обнулить все Х.
ОТВЕТЫ
Максимилианович
Aug 8, 2019
1. Традиционное решение
const
n=10;
var
x,y:array[1..n] of integer;
sx,sy,i:integer;
begin
Randomize;
Write(X: );
sx:=0;
for i:=1 to n do begin
x[i]:=Random(101)-50;
Write(x[i], );
sx:=sx+x[i]
end;
Writeln;
Write(Y: );
sy:=0;
for i:=1 to n do begin
y[i]:=Random(101)-50;
Write(y[i], );
sy:=sy+y[i]
end;
Writeln;
Writeln(Сумма х= ,sx,, сумма y= ,sy);
if sxgt;sy then for i:=1 to n do y[i]:=0
else for i:=1 to n do x[i]:=0;
Write(X: );
for i:=1 to n do Write(x[i], );
Writeln;
Write(Y: );
for i:=1 to n do Write(y[i], );
Writeln
end.
Пример
X: 4 29 -50 -18 37 -43 -18 9 41 28
Y: -8 41 -18 -6 -10 -10 47 -8 -29 25
Сумма х= 19, сумма y= 24
X: 0 0 0 0 0 0 0 0 0 0
Y: -8 41 -18 -6 -10 -10 47 -8 -29 25
2. Аналогичное решение средствами PascalABC.Net 3.2
const
n=10;
begin
var x:=ArrRandom(n,-50,50); Write(X: ); x.Println;
var y:=ArrRandom(n,-50,50); Write(Y: ); y.Println;
var sx:=x.Sum; var sy:=y.Sum;
Writeln(Сумма х= ,sx,, сумма y= ,sy);
if sxgt;sy then y:=ArrFill(n,0) else x:=ArrFill(n,0);
Write(X: ); x.Println;
Write(Y: ); y.Println
end.
Выбирать вам...)))
const
n=10;
var
x,y:array[1..n] of integer;
sx,sy,i:integer;
begin
Randomize;
Write(X: );
sx:=0;
for i:=1 to n do begin
x[i]:=Random(101)-50;
Write(x[i], );
sx:=sx+x[i]
end;
Writeln;
Write(Y: );
sy:=0;
for i:=1 to n do begin
y[i]:=Random(101)-50;
Write(y[i], );
sy:=sy+y[i]
end;
Writeln;
Writeln(Сумма х= ,sx,, сумма y= ,sy);
if sxgt;sy then for i:=1 to n do y[i]:=0
else for i:=1 to n do x[i]:=0;
Write(X: );
for i:=1 to n do Write(x[i], );
Writeln;
Write(Y: );
for i:=1 to n do Write(y[i], );
Writeln
end.
Пример
X: 4 29 -50 -18 37 -43 -18 9 41 28
Y: -8 41 -18 -6 -10 -10 47 -8 -29 25
Сумма х= 19, сумма y= 24
X: 0 0 0 0 0 0 0 0 0 0
Y: -8 41 -18 -6 -10 -10 47 -8 -29 25
2. Аналогичное решение средствами PascalABC.Net 3.2
const
n=10;
begin
var x:=ArrRandom(n,-50,50); Write(X: ); x.Println;
var y:=ArrRandom(n,-50,50); Write(Y: ); y.Println;
var sx:=x.Sum; var sy:=y.Sum;
Writeln(Сумма х= ,sx,, сумма y= ,sy);
if sxgt;sy then y:=ArrFill(n,0) else x:=ArrFill(n,0);
Write(X: ); x.Println;
Write(Y: ); y.Println
end.
Выбирать вам...)))
var
i,sumX, sumY: integer;
x: array [1..10] of integer;
y: array [1..10] of integer;
begin
sumX:=0; sumy:=0;
//çàïîëíèì ìàññèâ x
for i:=1 to 10 do
begin
read (x[i]);
sumX:=sumX+x[i]
end;
//çàïîëíèì ìàññèâ y
for i:=1 to 10 do
begin
read (y[i]);
sumY:=sumY+y[i]
end;
writeln (sumx=,sumx,sumy=,sumy);
if sumXgt;sumY then for i:=1 to 10 do y[i]:=0;
if sumXlt;sumY then for i:=1 to 10 do x[i]:=0;
for i:=1 to 10 do
writeln (x[,i,]=,x[i],y[,i,]=,y[i]);
end.
214
Смежные вопросы: