Графический адаптер, графическая плата
1) F и G зависят от 5-ти переменных, поэтому
в их таблицах истинности будет по 2^5=32 строки
2) в таблицах истинности в 5-ти строках FиG имеют одинаковые значения:
в 4-х строках: F=1 и G=1 -----> F∪G=1
в 1-й строке F=0 и G=0 ------> F∪G=0
в остальных строках разные значения
(F=0 и G=1) или (F=1 и G=0) ----> F∪G=1
3) 32-1=31 - общее количество строк, которые дают F∪G=1
ответ 31
<u><em>Для стека:</em></u>
const
<span> MAX_SIZE = 100;
</span>var
size, n: integer;
stack: array[1..MAX_SIZE] of integer;
procedure push(a: integer);
begin
inc(size);
stack[size] := a;
<span>end;
procedure view;
var
i: integer;
begin
for i := 1 to size do
write(stack[i], ' ');
writeln;
end;
<u><em>Для очереди:</em></u>
const
MAX_SIZE = 100;
var
head, tail: integer;
queue: array[1..MAX_SIZE] of integer;
procedure push(a: integer);
begin
queue[tail] := a;
inc(tail);
<span>end;
procedure view;
var
i: integer;
begin
for i := head to tail - 1 do
write(queue[i], ' ');
writeln;
<span>end;
<em><u>И стек и очередь реализованы с помощью массива. Нужно следить, чтобы размер структуры не был больше размера массива</u></em></span></span></span>
Const
n = 2016;
var
a: array[1..n] of integer;
i, m, k: integer;
begin
randomize;
m := 1;
for i := 1 to n do
begin
a[i] := random(1000);
m := m * a[i] mod 2;
// write(a[i], ' ');
end;
k := -1;
for i := 1 to n do
if (a[i] mod 2 = m) and (a[i] > k) then
k := a[i];
writeln(k);
end.
ответ примерно будет одинаковым, так как очень много цифр в массиве