Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Воган Ли - Python для хакеров (Библиотека программиста) - 2023.pdf
Скачиваний:
3
Добавлен:
07.04.2024
Размер:
14.76 Mб
Скачать

Проект #1. Поиск и спасение      51

Возвращаясь в глобальную область, применяем код, который позволяет импортировать программу в виде модуля или запустить в автономном режиме. Переменная _name — это встроенная переменная, которую применяют, чтобы установить, является ли программа автономной или импортирована в другую программу. Если вы запускаете эту программу непосредственно, _name устанавливается как _main_, условие инструкции if выполняется и автоматически вызывается main(). Если же программа импортирована, то функция main() выполняться не будет, пока ее не вызовут намеренно.

Время сыграть

Для запуска игры выберите в текстовом редакторе Run Run Module или просто нажмите F5. На рис. 1.7 и 1.8 показаны завершающие окна игры с результатами успешного первого поиска.

Рис. 1.7. Окно интерпретатора Python с успешным результатом поиска

В этом примере поиска игрок решил отправить обе команды в область 2, начальная вероятность нахождения моряка в которой составляла 50 %. Первый поиск оказался безуспешен, но вторая команда моряка все же нашла. Обратите внимание, что эффективность поиска была всего чуть выше 50 %. Это означает, что шанс обнаружить моряка в первом поиске составлял всего один к четырем

52      Глава 1. Спасение моряков с помощью теоремы Байеса

(0.5 ×0.521 = 0.260). Несмотря на разумный выбор, игроку все равно пришлось также положиться и на долю удачи.

Рис. 1.8. Изображение базовой карты для результата успешного поиска

Когда будете играть в эту игру, попытайтесь погрузиться в сценарий. Ваши решения определяют, будет ли спасен человек или умрет, и времени при этом в обрез. Если моряк дрейфует в воде, то у вас есть всего три попытки, чтобы обнаружить его живым. Используйте их мудро!

Исходя из целевых вероятностей в начале игры, моряк, скорее всего, находится в области 2 и с меньшей долей вероятности — в области 3. Значит, хорошей стратегией начала будет либо дважды произвести поиск по области 2 (выбор меню 2), либо обыскать области 2 и 3 одновременно (выбор меню 6). Вам нужно внимательно следить за выходными данными результатов поиска. Если любая из областей получит высокий показатель эффективности, который означает, что область была просмотрена тщательно, то вам стоит переключить внимание на поиск в других областях.