var a: array[1..nmax] of integer; i, n, j, count: integer; mini, maxi: integer; min, max: real; temp: real; sum, product, harmonic: real; k: integer;
begin {ввод массива} n := nmax; if handsfree then n := random(nmax - 5) + 5 else begin write('n = '); readln(n); end;
writeln('Данные массива:'); for i := 1 to n do begin if handsfree then begin a[i] := random(random_max - random_min) + random_min; write(a[i], ' '); end else readln(a[i]); end; writeln();
{подсчет суммы и произведения и агригатов и кол-ва} sum := 0; product := 1; for i := 1 to n do begin sum := sum + a[i]; if a[i] mod 3 = 0 then {если нужен фильтр} product := product * a[i]; end; writeln('1) sum = ', sum); writeln('2) product = ', product);
{подсчет суммы и произведения и агригатов и кол-ва} sum := 0; count := 0; for i := 1 to n do begin if i mod 2 = 1 then {если нужен фильтр} begin count := count + 1; sum := sum + a[i]; end; end; writeln('3) average (selected) = ', sum / count);
{подсчет суммы и произведения и агригатов и кол-ва} sum := 0; product := 1; count := 0; for i := 1 to n do begin if i mod 2 = 0 then {если нужен фильтр} sum := sum + a[i]; if a[i] < 0 then {если нужен фильтр} product := product * a[i]; if a[i] mod 2 = 1 then {если нужен фильтр} count := count + 1; end; writeln('4) count = ', count); writeln('4) sum = ', sum); writeln('4) product = ', product); end.
i = 0; sum = 0;
Пока i < N;
sum = sum + A[i]
увеличить i на 1.
2.A[N]
i = 0; sum = 0;
Пока i < N;
Если A[i] делиться на 3 без остатка, то : (sum = sum + A[i])
увеличить i на 1.
3.A[N]
i = 1; sum = 0;
Пока i < N;
sum = sum + A[i]
увеличить i на 2.
Сред. знач. = sum/i
4. A[N]
i = 0; sum = 0; chet =0; nechet = 0; otr =0;
Пока i < N;
Если A[i] <0, то : (otr = otr * A[i])
Если i делиться на 2, то (chet = chet + A[i]) в ином случае nechet = nechet +1
увеличить i на 1.
Сума четных - chet
Произведение отрицательных - otr
Количество нечетніх - nechet
//Если программа не запускается, то обновите версию
const
handsfree = true;
nmax = 100;
random_min = -28;
random_max = 27;
var
a: array[1..nmax] of integer;
i, n, j, count: integer;
mini, maxi: integer;
min, max: real;
temp: real;
sum, product, harmonic: real;
k: integer;
begin
{ввод массива}
n := nmax;
if handsfree then
n := random(nmax - 5) + 5
else begin
write('n = ');
readln(n);
end;
writeln('Данные массива:');
for i := 1 to n do
begin
if handsfree then begin
a[i] := random(random_max - random_min) + random_min;
write(a[i], ' ');
end
else
readln(a[i]);
end;
writeln();
{подсчет суммы и произведения и агригатов и кол-ва}
sum := 0;
product := 1;
for i := 1 to n do
begin
sum := sum + a[i];
if a[i] mod 3 = 0 then {если нужен фильтр}
product := product * a[i];
end;
writeln('1) sum = ', sum);
writeln('2) product = ', product);
{подсчет суммы и произведения и агригатов и кол-ва}
sum := 0;
count := 0;
for i := 1 to n do
begin
if i mod 2 = 1 then {если нужен фильтр}
begin
count := count + 1;
sum := sum + a[i];
end;
end;
writeln('3) average (selected) = ', sum / count);
{подсчет суммы и произведения и агригатов и кол-ва}
sum := 0;
product := 1;
count := 0;
for i := 1 to n do
begin
if i mod 2 = 0 then {если нужен фильтр}
sum := sum + a[i];
if a[i] < 0 then {если нужен фильтр}
product := product * a[i];
if a[i] mod 2 = 1 then {если нужен фильтр}
count := count + 1;
end;
writeln('4) count = ', count);
writeln('4) sum = ', sum);
writeln('4) product = ', product);
end.