F(x,y,z) = y или не x и z
Объяснение:
(( x ∨ ¬y) ∧ y) ∨ (¬x ∧ (y ∨ z)
Переходим на альтернативную систему обозначений операций, заменяя ∧ на умножение и ∨ на сложение.
(( x + ¬y) · y) + (¬x · (y + z)
А теперь это обычная алгебра - раскрываем скобки
x·y + ¬y·y + ¬x·y + ¬x·z
Особенность булевой алгебры: ¬y · y = 0
x·y + 0 + ¬x·y + ¬x·z
x·y + ¬x·y + ¬x·z
Выносим y за скобки
y·(x + ¬x) + ¬x·z
Еще одна особенность булевой алгебры: ¬х + х = 1
y·1 + ¬x·z
y + ¬x·z
Можно вернуться к исходной системе обозначений
y ∨ ¬x ∧ z
PascalABC.NET
begin
var (N, k) := ReadInteger2;
N := N div 100 * 100;
if N mod k <> 0 then
N := (N div k + 1) * k;
Write(N)
end.
Объяснение:
Заменяем две последние цифры числа N нулями, для чего делим его на 100 нацело, а затем результат деления умножаем на 100. Принимаем полученное число за N. Делим это новое значение N нацело на k, затем частное увеличиваем на 1 и умножаем эту сумму на k, получая ответ.
Пример.
N = 3571483, k = 97
N / 100 = 35714: 35714 × 100 = 3571400 - это новое значение N
N / k = 3571400 / 97 ≈ 36818 (остаток ненулевой); 36818 + 1 = 36819;
36819 × 97 = 3574143