Вопрос задан 07.10.2026 в 23:04.
Предмет Информатика.
Спрашивает Смирнов Макар.
Напишите код для создания лабиринта в питоне
Пожалуйста
Ответы на вопрос
Отвечает Мухин Артем.
Вот простой пример программы на Python, которая создает случайный лабиринт. Используется алгоритм поиска в глубину (DFS): программа начинает с клетки и постепенно прокладывает проходы, убирая стены.
Python
import random
# Размер лабиринта
WIDTH = 21
HEIGHT = 21
# Создаем поле со стенами
maze = [["#" for _ in range(WIDTH)] for _ in range(HEIGHT)]
# Направления движения
directions = [
(0, 2),
(0, -2),
(2, 0),
(-2, 0)
]
def create_maze(x, y):
maze[y][x] = " "
random.shuffle(directions)
for dx, dy in directions:
nx = x + dx
ny = y + dy
if 0 < nx < WIDTH - 1 and 0 < ny < HEIGHT - 1:
if maze[ny][nx] == "#":
# Убираем стену между клетками
maze[y + dy // 2][x + dx // 2] = " "
create_maze(nx, ny)
# Начальная точка
create_maze(1, 1)
Пример результата:
Код
####################
# # #
#### # ##### # ### #
# # # # # #
# # ##### # ### # #
# # # # #
####### ##### # # #
# # # #
#### # ##### #######
# # #
##################### — это стены, пробелы — проходы.
Такой код создает новый лабиринт при каждом запуске. Размер можно менять через WIDTH и HEIGHT, но лучше использовать нечетные числа, например 21×21 или 31×31, чтобы алгоритм правильно работал.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

