Тонером (если интересно что это загугли)
// PascalABC.NET 3.3
begin
var a:=ReadSeqIntegerWhile(x->x<>0).ToArray;
Print(a.Count,a.Where(x->(x mod 2<>0)and(x mod 3=0)).Count);
end.
Пример:
20 87 15 46 61 0
5 2
Var ar:array[1..10] of integer;
k,i,m:integer;
begin;
randomize;
k:=1;writeln('Array:');
for i:=1 to 10 do
begin;
ar[i]:=random(0,15);
if odd(i)=false then k:=k*ar[i];
write(ar[i]:4);
end;
writeln;
writeln('Result:',k);
if odd(k) then writeln('Yes') else writeln('No');
end.
<span>
//Мала вероятность того, что вернёт Yes, поэтому прикрутил Result
Вывод с 300-400 запуска:
Array:
9 15 8 15 5 3 0 15 3 9
Result:91125
Yes<span>
</span></span>
Begin
write ('1,2,3,4,5');
end.
begin
write ('2,4,6,8,10,12,14,16,18,20');
end.
begin
write ('15,17,19,21,23,25,27,29,31,33,35');
Const
nn=50; { ограничение на длину строки/столбца }
var
i,j,m,n,k,s:integer;
a:array[1..nn,1..nn] of integer;
begin
Randomize;
Write('Количество строк в массиве '); Read(m);
Write('Количество столбцов в массиве '); Read(n);
s:=0;
k:=0;
for i:=1 to m do begin
for j:=1 to n do begin
a[i,j]:=Random(101)-50;
Write(a[i,j]:4);
if a[i,j]>0 then begin
s:=s+a[i,j];
k:=k+1
end
end;
Writeln
end;
Writeln('Ср. арифметическое положительных ',s/k)
end.
<u>Пример</u>
Количество строк в массиве 8
Количество столбцов в массиве 11
-11 27 -22 46 -34 -36 10 39 -5 15 -46
46 -48 -42 50 -14 12 -23 -29 -2 8 16
-18 -5 -31 21 -28 -38 20 33 9 24 4
43 18 9 -44 -22 25 37 39 -48 -16 -15
-15 12 46 49 12 -50 -10 42 47 46 33
23 -5 34 26 -5 42 -2 -32 12 -44 -19
-8 -41 -9 -9 -20 -16 3 -15 9 5 -19
47 -40 7 26 -26 0 20 -8 18 27 9
Ср. арифметическое положительных 25.4666666666667