Напишите программу на Паскале, которая заполняет массив N2 из 9 элементов степенями числа 2 от 1-й до 9-й степени, печатает этот массив, а потом перемещает элементы массива N2 в массив N2B в обратном порядке и печатает массив N2B .
PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018 Внимание! Если программа не работает, обновите версию!
procedure LT(p,q:array of integer; var r:boolean); begin r:=p.Zip(q,(i,j)->i-j).All(t->t<0) end;
begin var a:=ArrRandom(15,-50,10); Print('a:'); a.Println; var b:=ArrRandom(15,-10,50); Print('b:'); b.Println; var less:boolean; LT(a,b,less); if less then begin a.Transform(t->t*10); Print('a:'); a.Println; b.Transform(t->t div 2); Print('b:'); b.Println end else Writeln('Векторы не менялись') end.
Const k=30; var b,a:array [1..k] of integer; i,m,n,k1:integer; begin for i:= 1 to k do b[i]:= Random(-15,15); writeln(b); for i:=1 to k do if (b[i]<0) then begin m:=b[i]; n:=i end; for i:=1 to k do if (b[i]<0) and (b[i]>m) then begin m:=b[i]; n:=i end; for i:=1 to k do if (b[i]<0) and (b[i]=m) then begin k1:=k1+1; a[k1]:=i end; writeln ('Максимальный отрицательный элемент ',m); if k1>1 then for i:=1 to k1 do writeln ('Номер максимального отрицательного элемента ',a[i]) else writeln ('Номер максимального отрицательного элемента ',n) end.
Пример: [5,8,-11,4,-6,-3,-8,10,15,13,11,-2,0,-5,-14,11,-1,-7,15,-12,-11,5,-2,15,11,0,1,7,8,14] Максимальный отрицательный элемент -1 Номер максимального отрицательного элемента 17
Пример: [14,-4,5,-1,-14,4,-3,9,7,-15,1,9,11,-10,-1,4,1,-10,6,-13,-10,-5,1,9,9,-9,-7,-2,9,12] Максимальный отрицательный элемент -1 Номер максимального отрицательного элемента 4 Номер максимального отрицательного элемента 15
Внимание! Если программа не работает, обновите версию!
procedure LT(p,q:array of integer; var r:boolean);
begin
r:=p.Zip(q,(i,j)->i-j).All(t->t<0)
end;
begin
var a:=ArrRandom(15,-50,10); Print('a:'); a.Println;
var b:=ArrRandom(15,-10,50); Print('b:'); b.Println;
var less:boolean;
LT(a,b,less);
if less then begin
a.Transform(t->t*10); Print('a:'); a.Println;
b.Transform(t->t div 2); Print('b:'); b.Println
end
else Writeln('Векторы не менялись')
end.
Примеры
a: -1 -32 -32 6 -27 -19 -31 -24 -38 -7 -23 -20 -32 -32 2
b: -7 -8 4 -3 31 12 49 42 -9 3 -1 46 9 45 49
Векторы не менялись
a: -15 9 -43 -6 -27 -41 -37 4 -37 -22 -41 -34 -12 -5 -32
b: -1 21 -9 38 5 33 38 45 27 12 25 -7 40 38 9
a: -150 90 -430 -60 -270 -410 -370 40 -370 -220 -410 -340 -120 -50 -320
b: 0 10 -4 19 2 16 19 22 13 6 12 -3 20 19 4
var
b,a:array [1..k] of integer;
i,m,n,k1:integer;
begin
for i:= 1 to k do
b[i]:= Random(-15,15);
writeln(b);
for i:=1 to k do
if (b[i]<0) then
begin
m:=b[i];
n:=i
end;
for i:=1 to k do
if (b[i]<0) and (b[i]>m) then
begin
m:=b[i];
n:=i
end;
for i:=1 to k do
if (b[i]<0) and (b[i]=m) then
begin
k1:=k1+1;
a[k1]:=i
end;
writeln ('Максимальный отрицательный элемент ',m);
if k1>1 then
for i:=1 to k1 do writeln ('Номер максимального отрицательного элемента ',a[i])
else writeln ('Номер максимального отрицательного элемента ',n)
end.
Пример:
[5,8,-11,4,-6,-3,-8,10,15,13,11,-2,0,-5,-14,11,-1,-7,15,-12,-11,5,-2,15,11,0,1,7,8,14]
Максимальный отрицательный элемент -1
Номер максимального отрицательного элемента 17
Пример:
[14,-4,5,-1,-14,4,-3,9,7,-15,1,9,11,-10,-1,4,1,-10,6,-13,-10,-5,1,9,9,-9,-7,-2,9,12]
Максимальный отрицательный элемент -1
Номер максимального отрицательного элемента 4
Номер максимального отрицательного элемента 15