Игра «Арканоид» · Шаг 2 из 8
Полёт
Мяч летит наискосок или прямо: за такт он сдвигается на одну строку вверх или вниз и, может быть, на один столбец вбок. Куда он летит, записано парой — на сколько строк и на сколько столбцов за такт.
Что сделать
Найдите клетку, в которой мяч окажется через такт.
Что приходит
myach— где мяч:(строка, столбец)napravlenie— куда летит:(на сколько строк, на сколько столбцов), например(-1, 1)— вверх и вправо
Что вернуть
Клетку (строка, столбец) после одного шага; края поля здесь не проверяются.
Допишите функцию polet в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
В игре
Игра зовёт polet на каждом такте, когда стены, кирпичи и ракетка уже повернули мяч. Решите шаг — и мяч полетит наискосок, а не только вверх и вниз.
Без этого шага: мяч летает только вверх и вниз.
polet((10, 6), (-1, -1))
(9, 5)
Мяч — клетка (строка, столбец), строки сверху вниз. Направление — пара (вниз, вбок): вниз равно −1 (вверх) или 1 (вниз), вбок — −1, 0 или 1.
Функция возвращает новую клетку — кортеж (строка + вниз, столбец + вбок). Что за краем поля, она не проверяет: от стен мяч поворачивают раньше, на другом шаге.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.