Разберем 6-ое задание из ОГЭ по информатике. Новая вариант этого задания немного смущает учащихся 9-го класса из-за появления параметра, который нужно изменять и думать, что будет происходить при данном изменении.
Задача
Ниже приведена программа, записанная на пяти языках программирования.
Было проведено 9 запусков программы, при которых в качестве значений переменных «s» и «k» вводились следующие пары чисел:
(16, 12); (-8, -10); (18, 2); (5, -5); (1, -9); (10, 9); (-10, -2); (14, 1); (20, 5).
Укажите минимальное целое значение A, при котором для указанных входных данных программа напечатает «НЕТ» 4 раза.
Решение:
Стоит немного прогнаться по определениям.
Конъюнкция (&, *, and, И, ∧) — логическая операция, по смыслу максимально приближенная к союзу «и». Истина только тогда, когда оба выражения являются истинными. Возвращает ложь, когда хотя бы одно выражение ложно.
Дизъюнкция (|, +, or, ИЛИ, ∨) — логическая операция, по смыслу максимально приближенная к союзу «или». Истина только тогда, когда хотя бы одно выражение является истинным. Возвращает ложь, когда все выражения ложны.
◼ Судя по условию, первое введенное число заноситя в переменную s, а второе — в переменную k. Значит для пар, у которых второе число строго больше 5, мы уже можем написать, что программа выведет ДА, независимо от значения параметра, ведь дизъюнкция возвращает истину, если хотя бы один операнд истина.
◼ В остальных парах нам понадобится сравнить s и A, потому что ответ уже будет зависеть от параметра A. Такие пары легче всего отсортировать по возрастанию первого числа, которое хранится в переменно s.
◼ При нашей сортировке, первое НЕТ появится, когда параметр будет 18<A≤20, два НЕТ появится тогда, когда параметр будет 14<A≤18. И так далее, расставив 4 НЕТ, мы узнаем, что необходимый диапахон для параметр: 1<A≤ 5. Отсюда легко найти наименьшее значение парамтра: A = 2.
Схематично полное решение можно расписать следующим образом:
Также данную задачу можно решить методом перебора грубой силой. Накидать программку легче всего на Python:
Результаты подтвердили наше аналитическое решение.
Понравилась статья? Поставьте лайк, подпишитесь на канал, напишите комментарий! Вам не сложно, а мне очень приятно :)
Если Вам нужен репетитор по физике, математике или информатике/программированию, Вы можете написать мне или в мою группу Репетитор IT mentor в VK
Лучший канал для физиков, математиков и программистов
Репетитор IT mentor в telegram