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

Игра «Арканоид» · Шаг 6 из 8

Уровень из текста

Уровни игры записаны текстом — так их удобно рисовать в редакторе: точка или пробел — пусто, цифра — кирпич такой прочности. Текст пишет человек, поэтому программа обязана сказать, где он ошибся, а не упасть с непонятным.

Что сделать

Разберите уровень из текста в словарь кирпичей, а ошибку в тексте назовите с номером строки.

Что приходит

  • tekst — уровень: строки сверху вниз

  • shirina — ширина поля в столбцах

Что вернуть

Словарь {(строка, столбец): прочность} в порядке чтения; ошибка в тексте — ValueError, его текст начинается с «строка N:».

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

В игре

Игра зовёт razobrat_uroven в начале партии и при переходе на следующий уровень. Решите шаг — и вместо одного ряда кирпичей появятся настоящие уровни, их три.

Без этого шага: вместо уровней — один ряд кирпичей.

Пример

Текст из двух строк, 1.2 и .3., на поле шириной 3: в первой строке кирпичи прочности 1 и 2 по краям, во второй — тройка посередине. Ответ — {(0, 0): 1, (0, 2): 2, (1, 1): 3}.

Тот же пример кодом
Вызов
razobrat_uroven("1.2\n.3.", 3)
Вернуть
{(0, 0): 1, (0, 2): 2, (1, 1): 3}

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

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

Обсуждение

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

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