//PascalABC.NET
//Версия 3.3, сборка 1611
begin
write(ReadSeqIntegerWhile(x->x<>0).Where(x->x<0).Aggregate(BigInteger(1),(x,y)->(x*y)));
end.
Const
N = 30;
Var
a: array [1..N] of integer;
MaxEv, MaxOdd, I: integer;
begin
for i := 1 to N do
begin
write('a[', i , '] = ');
readln(a[i]);
end;
MaxEv := 0;
MaxOdd := 0;
For I := 1 to N do { перебираем все элементы массива}
if a[i] mod 2 = 0 then { проверяем делится ли текущий элемент на 2 без остатка}
begin
if a[i] > MaxEv then {если да, то проверяем больше ли найденного до этого наибольшего четного}
MaxEv := a[i]; {присваиваем новое наибольшее четное значение}
end
else
if a[i] > MaxOdd then {если нет, то проверяем больше ли найденного до этого наибольшего нечетного}
MaxOdd := a[i]; {присваиваем новое наибольшее нечетное значение}
Writeln ('MaxEv - MaxOdd = ', MaxEv, ' - ', MaxOdd, ' = ', MaxEv - MaxOdd);
end.
Var
n:integer;
begin
n:=20;
while n<=320 do begin
Write(n,' ');
n:=2*n
end
end.
Результат работы
20 40 80 160 320
Var i,j,n: integer;
<span> a: array[,] of real;
</span><span>begin
</span><span> write('n = '); readln(n);
</span><span> setlength(a,n+1,n+1);
</span><span> randomize;
</span><span> writeln('исходная матрица:');
</span><span> for i:=1 to n do
</span><span> begin
</span><span> for j:=1 to n do
</span><span> begin
</span><span> a[i,j]:=random(-20,20);
</span><span> write(a[i,j]:4);
</span><span> end;
</span><span> writeln;
</span><span> end;
</span><span>//транспонирование матрицы
</span><span> for i:=1 to n-1 do
</span><span> for j:=i+1 to n do swap(a[i,j],a[j,i]);
</span><span>//вывод на экран
</span><span> writeln('транспонированная матрица:');
</span><span> for i:=1 to n do
</span><span> begin
</span><span> for j:=1 to n do write(a[i,j]:4);
</span><span> writeln;
</span><span> end;
</span><span>end.
</span><span>
</span>n = 4
<span>исходная матрица:
</span><span> -5 16 -10 5
</span><span> -4 -20 6 14
</span><span> -2 10 -4 -7
</span><span> -16 1 -9 13
</span><span>транспонированная матрица:
</span><span> -5 -4 -2 -16
</span><span> 16 -20 10 1
</span><span> -10 6 -4 -9
</span><span> 5 14 -7 13
</span>
Var
a: array[1..20,1..20] of integer;
n,m,i,j,min,jm,x: integer;
begin
randomize;
write('Введите размеры массива: ');
readln(n,m);
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(19)-9;
write(a[i,j]:4);
end;
writeln;
end;
min:=0;
for i:=1 to n do min:=min+a[i,1];
writeln('Сумма элементов 1-го столбца = ',min);
jm:=1;
for j:=2 to m do
begin
x:=0;
for i:=1 to n do
x:=x+a[i,j];
writeln('Сумма элементов ',j,'-го столбца = ',x);
if x<min then
begin
min:=x;
jm:=j;
end;
end;
writeln('Минимальная сумма в ',jm,'-м столбце');
writeln('Полученный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
if j<>jm then a[i,j]:=a[i,jm];
write(a[i,j]:4);
end;
writeln;
end;
readln;
end<span>.</span>