var b: array[1..m, 1..n] of integer; i, j, k: integer;
begin Randomize; { Инициализация массива и вывод его первоначального состояния } { Одновременно - подсчет количества интересующих элементов } k:=0; Writeln('Исходный массив'); for i := 1 to m do begin for j := 1 to n do begin b[i, j] := Random(101) - 50; Write(b[i, j]:4); if (((i mod 2)<>0) and (b[i,j]>a)) then Inc(k) end; Writeln end; { Вывод результатов } Writeln('Элементов со значением больше ',a,' в нечетных строках: ', k) end.
Это выражение будет истинно (т.е. равно единице), если И первая скобка, И вторая скобка будут истинны (т.е. равны единице).
Рассмотрим первую скобку (A v В v C):
это выражение будет истинно, если хотя бы A, ИЛИ B, ИЛИ C будет истинно. Если хоть одно значение истинно, то все выражение истинно. Сюда подойдут значения 001, 010, 011, 100, 101, 110, 111 — 7 шт.
Рассмотрим вторую скобку (B & C & D):
это выражение будет истинно, если все три значения будут истинны. Сюда подойдет только одно — 111 (т.е. каждое каждая переменная истинна).
Для первой скобки у нас получилось 7 решений, а для второй — 1 решение. Всего решений целого уравнения — 7 * 1 = 7 решений.
m = 5;
n = 8;
a = 13;
var
b: array[1..m, 1..n] of integer;
i, j, k: integer;
begin
Randomize;
{ Инициализация массива и вывод его первоначального состояния }
{ Одновременно - подсчет количества интересующих элементов }
k:=0;
Writeln('Исходный массив');
for i := 1 to m do
begin
for j := 1 to n do
begin
b[i, j] := Random(101) - 50;
Write(b[i, j]:4);
if (((i mod 2)<>0) and (b[i,j]>a)) then Inc(k)
end;
Writeln
end;
{ Вывод результатов }
Writeln('Элементов со значением больше ',a,' в нечетных строках: ', k)
end.
Тестовое решение:
Исходный массив
-11 -32 21 40 -21 -6 -44 18
-37 18 -10 -33 -6 -41 38 9
23 -6 38 47 -40 -16 41 37
50 -9 43 25 16 -12 45 -37
0 49 -38 45 -2 -29 -9 35
Элементов со значением больше 13 в нечетных строках: 11
Это выражение будет истинно (т.е. равно единице), если И первая скобка, И вторая скобка будут истинны (т.е. равны единице).
Рассмотрим первую скобку (A v В v C):
это выражение будет истинно, если хотя бы A, ИЛИ B, ИЛИ C будет истинно. Если хоть одно значение истинно, то все выражение истинно. Сюда подойдут значения 001, 010, 011, 100, 101, 110, 111 — 7 шт.
Рассмотрим вторую скобку (B & C & D):
это выражение будет истинно, если все три значения будут истинны. Сюда подойдет только одно — 111 (т.е. каждое каждая переменная истинна).
Для первой скобки у нас получилось 7 решений, а для второй — 1 решение. Всего решений целого уравнения — 7 * 1 = 7 решений.
ответ: 7