П.С. Можно решить легче: сначала подставить L=0 и делать что бы в скобках было 1 всегда. Потом L=1. У меня получилось в первом 2 варианта и во втором 2. всего 4
Program day; var a: array[1..30] of integer; b, s, i, min: integer; begin min := 999; Randomize; for i := 1 to 30 do begin a[i] := random(9, -3); s := s + a[i]; Write(a[i]:3); end; Writeln; Writeln('Ниже нуля '); for i := 1 to 30 do begin if a[i] > 0 then Write(i,'-го '); end; if a[i] = 0 then b := b + 1; Writeln; for i := 1 to 30 do if a[i] < min then min := a[i]; Writeln('Самая низкая температура - ', min); Writeln('Средняя температура ноября ', s / 30); end.
Что бы это уравнение было верно, нужно, что бы все скобки были итинными.
Следствие всегда истинно, кроме если из истинны идет ложь. Рассотрим эти варианты по скобкам. Исключая варианты которые входят в предыдущие ходы.
1) J = 1 L = 0 --- 8 вариантов
2) K = 1 L = 0 --- 4 варианта
3) M = 1 N = 1 --- 5 вариантов
4) L = 1 M = 0 --- 8 вариантов
5) M = 1 K = 0 --- 3 вариантов
всего 28 вариантов неверных.
32 - 28 = 4 верных варианта --- 4 решения уравнения.
П.С. Можно решить легче: сначала подставить L=0 и делать что бы в скобках было 1 всегда. Потом L=1. У меня получилось в первом 2 варианта и во втором 2. всего 4
var
a: array[1..30] of integer;
b, s, i, min: integer;
begin
min := 999;
Randomize;
for i := 1 to 30 do begin
a[i] := random(9, -3);
s := s + a[i];
Write(a[i]:3);
end;
Writeln;
Writeln('Ниже нуля ');
for i := 1 to 30 do begin if a[i] > 0 then Write(i,'-го ');
end;
if a[i] = 0 then b := b + 1;
Writeln;
for i := 1 to 30 do
if a[i] < min then min := a[i];
Writeln('Самая низкая температура - ', min);
Writeln('Средняя температура ноября ', s / 30);
end.