program Proizv;
const
Di = 8; // размерность массива, можно менять на любое другое строки
Dj = 10; // а здесь столбцы
var
A: array [1..Di, 1..Dj] of Integer;
i, j, p: Integer;
begin
Randomize;
for i := 1 to Di do begin
WriteLn;
for j := 1 to Dj do begin
A [i, j] := Random (21) - 3;
Write (A [i, j] :3, ' ');
end;
end;
p := 1;
for i := 1 to Di do begin
if i mod 2 = 0 then // если строка четная то пропускаем
Continue;
for j := 1 to Dj do begin
if A [i, j] < 0 then // перемножаем только отрицательные значения
p := p * A [i, j];
end;
end;
WriteLn;
WriteLn ('Произведение = ', p);
ReadLn;
end.
Объяснение:
для упрощения считаем, что хотя бы одно требуемое число будет найдено. Если таких чисел найдено не будет, то результат произведения будет равен 1.
1)
var
i, n, a: integer;
begin
readln(n);
for i:= 1 to n do
begin
writeln('Введите число a: ');
readln(a);
if a mod 10 = 4) and (a > 10) and (a < 100) then
writeln(a);
writeln('Введите кол-во чисел n: ');
writeln('В данный момент n = ', n);
readln(n);
if n = 0 then break;
end;
end.
2)
var
i, n, a, z, min: integer;
begin
readln(n);
z:= 0;
for i:= 1 to n do
begin
writeln('Введите число a: ');
readln(a);
z:= z + 1;
if (i <> 0) and (z = 1) then
min:= a;
if (a < min) then min:= a;
writeln('Введите кол-во чисел n: ');
writeln('В данный момент n = ', n);
readln(n);
if n = 0 then break;
end;
writeln(min)
end.
#1
import statistics
def ReadIntWhile(predicate):
x = int(input())
while predicate(x):
yield x
x = int(input())
a = list(filter( lambda p: p>=0, ReadIntWhile(lambda p: p != 0)))
print(f'Sum: {sum(a)}, average: {statistics.mean(a)}')
#2
n = int(input())
[print(f'{n} * {i} = {n*i}') for i in range(1,11)]
#3
print(' Степени Двойки \n\n')
[print(f'степень: {i} :: Значение степени: {2**i}') for i in range(11)]
Объяснение: