ответ:3-сместиться на(-6 ,2)
<h3>PascalABC.NET 3.4.2, сборка 1811 от 01.10.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var p:=SeqRandomReal(ReadInteger('n='),-99,99)
.Select(t->Round(t,2)).ToArray;
p.Println;
Println('Сумма положительных',p.Where(r->r>0).Sum);
Println('Сумма отрицательных',p.Where(r->r<0).Sum)
end.
Const n=5;
var
a:array[1..n,1..n] of integer;
b:array[1..n] of integer;
i,j,max,min,s:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(21);
write(a[i,j]:4);
end;
writeln;
end;
max:=a[1,n];
for i:=2 to n do
if a[i,n-i+1]>max then max:=a[i,n-i+1];
writeln('1. max = ',max);
for i:=1 to n do
begin
min:=a[i,1];
for j:=2 to n do
if a[i,j]<min then min:=a[i,j];
b[i]:=min;
end;
s:=0;
writeln('2. Массив B');
for i:=1 to n do
begin
write(b[i]:4);
s:=s+b[i];
end;
writeln;
writeln('3. среднее = ',s/n);
for i:=1 to n do
if b[i]>s/n then write(b[i]:4);
writeln;
end.
Пример:
Исходный массив:
10 19 15 17 10
12 12 10 1 5
17 8 8 14 15
12 11 8 0 13
2 2 4 10 6
1. max = 11
2. Массив B
10 1 8 0 2
3. среднее = 4.2
10 8
1.Текстовые данные
2.Графические данные
3.Звуковые данные
4.Мультимедийные данные
<em>// PascalABC.NET 3.3, сборка 1573 от 04.11.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
procedure AB(a,b:array of integer);
begin
var (iaMax,ibMax):=(a.IndexMax,b.IndexMax);
var t:=a[iaMax]; a[iaMax]:=b[ibMax]; b[ibMax]:=t
end;
begin
var a:=ArrRandom(9,-99,99);
Write('A: '); a.Println;
var b:=ArrRandom(11,-99,99);
Write('B: '); b.Println;
AB(a,b);
Write('A: '); a.Println;
Write('B: '); b.Println;
end.
<u>Пример</u>
A: -46 -76 98 -83 84 8 -14 46 8
B: 29 -36 37 78 -20 35 -77 -23 80 -50 -55
A: -46 -76 80 -83 84 8 -14 46 8
B: 29 -36 37 78 -20 35 -77 -23 98 -50 -55