Войдите, чтобы продолжить.
Игра «Змейка» · Шаг 2 из 5
Свернуть
Стрелки меняют направление змейки. Но не любые: развернуться на месте змейка не может — голова въехала бы прямо в шею. Нажатие «назад» просто не замечается.
Что сделать
Поверните змейку по нажатой стрелке — но не назад, в собственную шею.
Что приходит
napravlenie— нынешнее направление:(-1, 0),(1, 0),(0, -1)или(0, 1)klavisha— нажатая клавиша:"vverh","vniz","vlevo","vpravo"
Что вернуть
Новое направление; клавиша строго назад или не стрелка — прежнее направление.
Допишите функцию povorot в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
В игре
Игра зовёт povorot на такте, когда в очереди есть нажатие. Решите шаг — и змейка начнёт слушаться стрелок, но не развернётся сама в себя.
Без этого шага: змейка не слушается стрелок.
povorot((0, 1), "vverh")
(-1, 0)
Функция принимает нынешнее направление — кортеж (строка, столбец) из (-1, 0), (1, 0), (0, -1), (0, 1) — и нажатую клавишу: "vverh", "vniz", "vlevo" или "vpravo". Возвращает новое направление.
Если клавиша указывает строго назад — туда, откуда змейка ползёт, — направление не меняется. Любая другая строка ("probel", "tik", опечатка) направления тоже не меняет.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.