Войти Создать аккаунт

Игра «Пятнашки» · Шаг 1 из 5

Сдвинуть плитку

В пятнашках двигается не пустая клетка, а плитка: нажали «влево» — плитка справа от пустой клетки съезжает в неё. Если справа плитки нет — пустая клетка у края, — ничего не происходит.

Что сделать

Сдвиньте по стрелке соседнюю плитку в пустую клетку, а если такой плитки нет — оставьте поле как было.

Что приходит

  • pole — поле списком рядов, 0 — пустая клетка; менять его нельзя

  • klavisha — "vverh", "vniz", "vlevo" или "vpravo"; бывает и другая строка

Что вернуть

Новое поле — список новых списков-рядов — после сдвига.

Допишите функцию sdvinut в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В игре

Игра зовёт sdvinut на каждое нажатие стрелки. Решите шаг — и плитки поедут по стрелкам; заодно шаг двигает плитки, когда пробел мешает лёгкую партию.

Без этого шага: стрелки не двигают плитки.

Вызов
sdvinut([[1, 2, 3], [4, 0, 5], [7, 8, 6]], "vlevo")
Вернуть
[[1, 2, 3], [4, 5, 0], [7, 8, 6]]

Готовая игра →

Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.