Правила раздела:
1 Задавайте конкретные вопросы. Для болтовни есть свободный раздел.
2 По возможности давайте конкретные ответы.
3 Один вопрос=одна тема. Если хотите задать ещё вопрос, то начинайте новую тему.
4 Название темы должно составлять сам вопрос, и быть максимально конкретным. Рекомендуется начинать тему словами "Как", "Что", "Почему". А первый пост повторяет вопрос и даёт расширенные сведения.
5 Рекомендуется указывать версию мейкера (2000, 2003, RMXP, RMVX, ACE, IGM, и.т.д.. Это важно, и всё равно ведь спросят.
6 Темы "Пара вопросов", "Помогите", и подобные им - самый лёгкий путь к бану.
7 Поиск находится вверху справа.
А. Названия подразделов этого раздела уточняются. Советы принимаются.

Ошибки в алгоритме генерации лабиринтов [RMXP]

Организатор конкурсов Разработчик Писатель Писатель 2 место 2 место Победитель конкурса 3 место
Больше
15 года 1 нед. назад - 15 года 1 нед. назад #44807 от James
Делаю работающий на эвентах генератор лабиринтов. Составил алгоритм действий, но он работает как-то неправильно. Выходы на новой клетке идут туда, куда запрещено, курсор, несмотря на все ограничения, выходит за пределы диапазона 1-5, несмотря на все ограничения, и всё такое. Где я мог ошибиться?



Часть сообщения скрыта для гостей. Пожалуйста, авторизуйтесь или зарегистрируйтесь, чтобы увидеть его.


На выходе должно получиться до двадцати пяти переменных, в каждой из которых после перевода в бинарную систему счисления последние четыре цифры определяют расположение выходов.
Последнее редактирование: 15 года 1 нед. назад пользователем James.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Организатор конкурсов Разработчик Писатель Писатель 2 место 2 место Победитель конкурса 3 место
Больше
15 года 1 нед. назад #44967 от James
Спрошу чего попроще. Я почти разобрался с алгоритмом, но теперь надо оптимизировать алгоритм выбора направления. Иначе wait 1 frame (Сделанный, дабы обеспечить возможность работы при запуске генерации параллельным эвентом) задерживает слишком надолго.

Вот в чём суть:
Есть некоторая клетка с количеством выходов от одного до четырёх. Нужно, используя средства команд эвентов, выбрать случайным образом один из этих выходов таким образом, что:
- Соседняя клетка в стороне этого выхода пуста
- Выход существует - т.е. на этой клетке с этой стороны есть выход

Иными словами, если упростить, получится, что надо отсечь неподходящие варианты и из оставшихся выбрать один. Проблема в том, что в мейкере диапазон для получения случайного числа нельзя изменить. Если задать "от 0 до 3", то потом никак нельзя сделать его "от 0 до 2"

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Организатор конкурсов Разработчик Писатель Писатель 2 место 2 место Победитель конкурса 3 место
Больше
15 года 1 нед. назад - 15 года 1 нед. назад #44969 от James
Вопрос:

- Вероятность выбора любого числа A из диапазона 0..(N-1)

и

- Вероятность получения этого числа A при получении остатка от деления случайного числа B из диапазона 0..X (X делится на N) на это N

равны?
Последнее редактирование: 15 года 1 нед. назад пользователем James.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

3 место
Больше
15 года 1 нед. назад #44971 от mamonth
не думаю. тот же остаток ты можешь получить два или более раз, те вероятность получения такого остатка будет больше.

пример: 50 mod 7 = 1
50 mod 49 = 1

THIS IS SO-VI-ET U-NI-O-N!

Need teh butta, gonna maek toawst!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Организатор конкурсов Разработчик Писатель Писатель 2 место 2 место Победитель конкурса 3 место
Больше
15 года 1 нед. назад #44976 от James
Поэтому я и уточнил, что X делится на N

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

3 место
Больше
15 года 1 нед. назад #44977 от mamonth
я, наверное, недопонимаю.

возьмем Х=100, N=25

выпадает В=26

26 mod 25 = 1

Но! Может выпасть B=51

51 mod 25 = 1

или я точно что то не понимаю

THIS IS SO-VI-ET U-NI-O-N!

Need teh butta, gonna maek toawst!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Организатор конкурсов Разработчик Писатель Писатель 2 место 2 место Победитель конкурса 3 место
Больше
15 года 1 нед. назад #44979 от James
Суть в том, что, насколько я понимаю, каждый остаток можно получить одинаковое число раз, поэтому шансы равны.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Время создания страницы: 0.100 секунд
Работает на Kunena форум