Вычислить преступника (Python)
Определите, кто из подозреваемых участвовал в преступлении, если известно:
- Если Иванов не участвовал или Петров участвовал, то Сидоров участвовал;
- Если Иванов не участвовал, то Сидоров не участвовал.
вариант решения (Python)
Введём логические переменные I, P, S, назовём их по первым буквам фамилий подозреваемых.
I будет означать, что в преступлении участвовал Иванов, P – Петров, S – Сидоров. Так как участвовал только один из них, у одной из этих переменных будет значение истина (1), а у двух других – ложь(0).
Преступника определим при помощи функции criminal(I, P, S). Её аргументами будут значения переменных I, P, S. Возможны три варианта значений: (1, 0, 0) – если участвовал Иванов, (0, 1, 0) – если участвовал Петров, (0, 0,1) – если участвовал Сидоров.
В функции применим конъюнкцию к 1 и 2 условиям.
При выполнении обоих условий функция вернёт True. Тогда к переменной answer добавится фамилия преступника.
вывод
Литература:
Информатика и ИКТ. Задачник-практикум под ред. Т.Г. Семакина, Е.К Хеннера. (Т. 1)