TwiddleLab / Код / Как думает программист
Собери мини-игру
Что ты узнаешь
- input() просит игрока что-то набрать. Он всегда возвращает текст.
- int() превращает текст вроде "50" в число 50, чтобы его можно было сравнивать.
- Игровой цикл повторяет: спросить, сравнить, ответить. Флаг found прекращает расспросы после победы.
- Деление пополам гарантирует, что 7 попыток хватит для чисел от 1 до 100, а 10 для чисел от 1 до 1000.
Как идёт урок
Последний уровень: настоящая игра строк на 12.
Сначала сыграй. Компьютер загадал число от 1 до 100. У тебя 7 попыток.
Сначала спланируй игру.
Расставь станции по порядку. Последняя отправляет на новую попытку.
Посмотри одну партию: загадано 37, догадки 50, 25, 37.
Пройди по шагам. Смотри на found и на то, что происходит после победы.
У новых деталей есть имена.
input() ждёт, пока игрок наберёт текст, и возвращает набранное. Всегда как текст, даже если он похож на число.
int() превращает текст вроде "13" в число 13. Тогда его можно сравнивать и складывать.
print() выводит текст и может вывести несколько вещей через запятую.
Игровой цикл повторяет: спросить, сравнить, ответить. random_number(1, 100) это готовый помощник, который загадывает число. Смотри, как это работает.
Собери сердце своей игры.
Расставь строки по порядку. «Запуск» сыграет тестовую партию с догадками 50 и 37.
Версия друга падает после первой догадки.
Запусти, прочитай сообщение и исправь строку, которая читает догадку.
Классический уровень: добавь подсказки.
Перетащи каждую строку print в нужную ветку и запусти тестовую партию.
Испытание: какой лимит попыток честный?
Идеальный игрок всегда называет середину. Найди самый маленький лимит, при котором он никогда не проигрывает.
Два бота играют в твою игру по 20 раз.
Запусти их, сравни средние и нажми на лучшую стратегию.
Загадано 37, игрок вводит 50. Какая строка напечатает?
Нажми на строку print, которая выполнится.
Друг загадывает от 1 до 1000. Задай честный лимит попыток.
Перетащи булавку на самый маленький лимит, при котором идеальный игрок никогда не проиграет.
Передай другу.
Твоя игра с твоим лимитом. Передай экран или сыграй ещё раз.
Предыдущий урок: Функции: дай рецепту имя · Часть курса: Как думает программист
Уроки интерактивные и работают на JavaScript. Включи его, чтобы играть.