Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2024, 17:55   #1
сфинкс
Форумчанин
 
Аватар для сфинкс
 
Регистрация: 17.06.2012
Сообщений: 976
По умолчанию Лабиринт и МЫ

Лабиринт и МЫ

Игра в лабиринт QB64 автоматизирована мной и сама играет
несколько вариантов: ходы по списку MazeCode
или ходы случайные MazeStep или ходы оптимальные MazeLab
и вдобавок MazeRnd синтезирует случайные лабиринты


MAZErnd.bas = случайные
MAZElab.bas = правильно
MAZEkino.bas = смена
MAZEcode.bas = коды
MAZEstep.bas = ходы

Новейшая программа MazeLab решает лабиринты
задавая следующий ход зависящий от хода предыдущего
и от вида препятствия пещеры: стена или угол

Если препятствие без угла тогда выбор направления случайный
перпендикулярно и начальное направление случайное
и из тупика выходит обратно плюс есть время и контроль





Кодировка направления дальновидная 0 > / 1 < / 2 V / 3 ^
для выбора случайного направления вида 2 + Int(Rnd * 2)
показывает вероятность выигрыша 2 в степени свободных ходов
и вероятность 1/64 реально трудная

Причём случайные ходы могли создать ходов шифр не подряд

Создан внутренний массив и каждое перемещение до стены
проверяют 4 * 4 = 16 условий и встроена мини карта массива
плюс возможно настроить ходы назад если стена

Программировал буквально 1 день введя контрольные точки

Начальный лабиринт 7-й уменьшается до 1-го и далее 10-й

Ранние версии программы добавлю в тему позже
где давно у меня шар оставляет следы на поле

Возможно создавать свои лабиринты и решать задав номер
и наверняка возможны случайные лабиринты пещеры

Весело смотреть как программа заходит не в ту дверь
сразу или на крайних очевидных ходах
и лабиринты из книг ещё не проверял

На другие языки проще перевести мой алгоритм массива с мини картой

В принципе реально проверять массив
если проходили угол 3-жды значит тупик стартовать заново

Версия MazeRnd синтезирует случайный лабиринт каждый раз
и в принципе легко настроить повторение лабиринта несколько раз
если вместо обнуления массивов добавлять в конец и не учитывать

Версия для Эксцель Excel программируется легко наверняка

Принципы похожи на XONIX



Все анимации малые и ещё на форуме есть другие темы про лабиринты
задав поиск включая темы: лабиринт

Важные фрагменты кода расшифрую позже в теме
Вложения
Тип файла: zip MAZErndBAS.zip (29.8 Кб, 3 просмотров)
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую

Последний раз редактировалось сфинкс; 24.09.2024 в 17:59.
сфинкс вне форума Ответить с цитированием
Старый 25.09.2024, 12:56   #2
ViktorR
Старожил
 
Регистрация: 23.10.2010
Сообщений: 2,331
По умолчанию

Нормально.
Но есть волновой алгоритм и ...
Предлагаю посмотреть тут:
https://yandex.ru/video/preview/5728115302771088443
и далее:
https://yandex.ru/video/preview/6426241303817973253
Там есть и продолжение.
Как-то так, ...
ViktorR вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Лабиринт ЧАК Помощь студентам 3 28.02.2012 14:08
Лабиринт keng Помощь студентам 9 14.09.2011 06:34
Лабиринт. ValinRam Помощь студентам 1 01.05.2011 08:47
Лабиринт GBTA Общие вопросы C/C++ 2 08.07.2010 12:03