Составил тебе только программу. Для блок-схемы создавай отдельную тему.
const
a = 3.14;
b = -7.8;
n = 15;
x: array[1..n] of real = (12.37, 16.55, 2.43, 0.81, 0.32, 1.345, -12.18, 0.15, -4.314, 1.29, 54.38, 0.214, -3.837, 0.918, -75.014);
var
i, k: integer;
p: real;
begin
k := 0;
p := 1;
for i:=1 to n do
if (x[i]>0) and (x[i]>b) then
begin
p := p * x[i];
inc(k);
end;
if k = 0 then writeln('Нет искомых элементов в массиве')
else writeln('Количество искомых элементов: ',k,'; их произведение = ',p:0:3);
end.
105
Объяснение:
Обернем эту программу в другую, которая будет подавать на ее вход натуральные числа в порядке возрастания до тех пор, пока в результате вычислений не получится пара (2, 2):
user_input = 1
while True:
x = user_input
a = 0; b = 0
while x > 0:
if x % 2 == 0:
a = a + x % 7
else:
b = b + 1
x = x // 7
print(user_input, a, b)
if a == 2 and b == 2:
break
user_input = user_input + 1
print('Found it: ' + str(user_input))