program z1;
var a: array [1..15] of real;
i, k, b: integer;
proizv: real;
begin
proizv:= 1;
a[1]:= 0.01;
a[2]:= -3;
a[3]:= 0;
a[4]:= 1.25;
a[5]:= -371;
a[6]:= 0.5;
a[7]:= -0.1;
a[8]:= 1.2;
a[9]:= -5;
a[10]:= -172.3;
a[11]:= 19783;
a[12]:= -2.7;
a[13]:= 43.51;
a[14]:= 0;
a[15]:= -0.02;
b:= -3;
k:= 0;
for i:=1 to 15 do
begin
if (a[i] <> 0) and (a[i] > b) then
begin
proizv:= proizv * a[i];
k:= k+1;
end;
end;
writeln('Количество чисел, подходящих условию: ', k);
writeln('Произведение чисел, подходящих условию: ', proizv);
end.
Объяснение:
На фото нарисована блок-схема, она немного криво сфоткана, надеюсь разберёшься. Если есть вопросы - задавай :)
program z1;
var a: array [1..15] of real;
i, k, b: integer;
proizv: real;
begin
proizv:= 1;
a[1]:= 0.01;
a[2]:= -3;
a[3]:= 0;
a[4]:= 1.25;
a[5]:= -371;
a[6]:= 0.5;
a[7]:= -0.1;
a[8]:= 1.2;
a[9]:= -5;
a[10]:= -172.3;
a[11]:= 19783;
a[12]:= -2.7;
a[13]:= 43.51;
a[14]:= 0;
a[15]:= -0.02;
b:= -3;
k:= 0;
for i:=1 to 15 do
begin
if (a[i] <> 0) and (a[i] > b) then
begin
proizv:= proizv * a[i];
k:= k+1;
end;
end;
writeln('Количество чисел, подходящих условию: ', k);
writeln('Произведение чисел, подходящих условию: ', proizv);
end.
Объяснение:
На фото нарисована блок-схема, она немного криво сфоткана, надеюсь разберёшься. Если есть вопросы - задавай :)
PascalABC.NET, но все кроме writeln() должно работать и на TurboPascal.
вводит числа рандомно и находит среднее арифметическое
чётных чисел и среднее арифметическое индексов нечётных чисел.
}
PROGRAM A4;
const
num = 16;
var
MT:array [1..num] of byte;// массив чисел
i,j:byte;// счетчики
even_sum:integer;// сумма четных
even_num:byte;// количество четных
indx_sum:integer;// сумма нечетных индексов
indx_num:byte;// количество нечетных индексов
BEGIN
// условно ввели набор чисел
randomize();
for i:=1 to num do
MT[i] := random(256);
writeln('Начальный массив ', num ,' случайных чисел');
writeln(MT);
// сам алгоритм
even_sum := 0;
even_num := 0;
indx_sum := 0;
indx_num := 0;
writeln(' ');
write('Четные числа: ');
for i:=1 to num do begin
if not odd(MT[i]) then begin
write(MT[i], ' ');
even_sum := even_sum + MT[i];
even_num := even_num + 1;
end;
if odd(i) then begin
indx_sum := indx_sum + i;
indx_num := indx_num + 1;
end;
end;
writeln(' ');
writeln('Количество четных чисел ', even_num);
writeln('Среднее арифметическое четных чисел = ',
even_sum, '/', even_num , ' = ', even_sum/even_num );
writeln(' ');
writeln('Количество нечетных индексов нечётных чисел ', indx_num);
writeln('Среднее арифметическое индексов нечётных чисел ',
indx_sum, '/', indx_num, ' = ', indx_sum/indx_num);
END.