Нужно через программу,легче будет)
Решила будет 6
Канал у вас что-то уж совсем узенький :)
1. Способ с архивированием.
Архивация: 18 с.
Передача: 4*1024*1024*8:220~=152520,145 с.
Распаковка: 2 с.
итого: 18+152520,145+2=152540,145 с.
2. Способ без архивирования.
Передача: 16*1024*1024*8:220=610080 с.
Конечно, с архивированием, почти вчетверо быстрее :)
.................
0, 1, 2.
Const n= 10;
var i,m: integer;
aa:array[1..n] of integer;
begin m:= 1;
for i:= 1 to n do
begin
aa[i]:= random(100);
if (aa[i] mod 2 = 0) then m:= aa[i] * m;
end;
writeln(m);
end.
Самый быстрый и легкий способ - логически порассуждать, применив правила алгебры логики (АЛ).
Запишем в немного упрощенном виде:
¬(a + b) * c.
Наше выражение состоит из отрицания первой части, в которой есть два слагаемых (ИЛИ = "+"), и умножения (И = "*") первой и второй частей. Так как нам нужно найти наборы, которые дают ложь, то проще всего будет посчитать вторую часть, которая будет ложна.
Вспомним правила АЛ:
0*0 = 0;
1*0 = 0;
0*1 = 0;
1*1 = 1;
Итого видим, что только в одном случае выражение дает истину - 1*1, чего нам стоит избегать.
Итак, попробуем решить вторую часть методом перебора:
1) - истина.
2) - истина.
3) - ложь.
4) - ложь.
5) - истина.
Итого в ответ идут два выражения: 3, 4.
Для достоверности нужно проверить истинные выражения, подставив в первую часть (на случай, если будет "0*1").
Для этого упростим.
¬(a+b) = ¬a * ¬b.
1) - истина.
2) - ложь
5) - истина.
Так как во втором выражении вышла ложь, то оно тоже пойдет в ответ (0*1 = 0).
Ответ: 2, 3, 4.