CMP - форум PRO игроков казино

Отзывы, советы экспертов и лучшие стратегии - для успешной игры в казино!

Python - математика рулетки казино в динамике

  • Shpilevoy
  • Shpilevoy аватар
  • VIP
  • VIP
  • ∻♥♚ RMT ♚♥∻
  • Сообщений: 5318

Re: Python - математика рулетки казино в динамике

1 мес. 1 нед. назад
#7
Круто! Работает!!!


►ИДЕАЛЬНЫЙ ИГРОК RMT
Loading… ███████[][][] 70%
Спасибо сказали: DLK, Евгений

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

  • DLK
  • DLK аватар
  • moder
  • moder
  • Сообщений: 2541

Re: Python - математика рулетки казино в динамике

1 мес. 6 дн. назад
#8
Повторил успешно.
Смотрю на этот мультфильм и не понимаю как его использовать.
Если в DCOLD там схема графика понятная, то что делать с этими палочками?
Если вы в казино ставите на красное, а вам упорно не везёт — попробуйте на красное положить!
Спасибо сказали: LUCKY-13, Mira, Edwerk

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

  • Mira
  • Mira аватар Автор темы
  • expert
  • expert
  • Сообщений: 763

Re: Python - математика рулетки казино в динамике

1 мес. 4 дн. назад - 1 мес. 3 дн. назад
#9
ПОЛНЫЙ ЦИКЛ ПОЛЯ

Полный цикл поля — это когда все номера от 0 до 36 хотя бы один раз выпадут. Нужно генерировать случайные числа в диапазоне [0, 36], обновлять их частоту на гистограмме, выводить текущий номер и номер спина в заголовке и завершить процесс, как только все числа окажутся задействованы. Вот рабочий скрипт для этой задачи:
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import random

# Диапазон номеров рулетки
min_value, max_value = 0, 36

# Инициализация данных
counts = [0] * (max_value + 1)  # Счетчик выпадений для каждого номера
seen_numbers = set()  # Множество уже выпавших номеров

def all_numbers_seen():
    """Проверка, все ли номера уже выпали хотя бы раз."""
    return len(seen_numbers) == (max_value - min_value + 1)

# Настройка графика
fig, ax = plt.subplots()
bars = ax.bar(range(min_value, max_value + 1), counts, color='skyblue')
ax.set_ylim(0, 1)  # Начальный масштаб Y, корректируется по мере работы

def animate(frame):
    global counts, seen_numbers

    # Генерация случайного числа
    current_value = random.randint(min_value, max_value)

    # Обновляем данные
    counts[current_value] += 1
    seen_numbers.add(current_value)

    # Обновляем высоты столбиков
    for i, bar in enumerate(bars):
        bar.set_height(counts)

    # Обновляем масштаб оси Y, если нужно
    max_count = max(counts)
    ax.set_ylim(0, max_count + 1)

    # Обновляем заголовок
    ax.set_title(f"Казино рулетка | Спин № {frame + 1} | Выпало: {current_value}")

    # Останавливаем анимацию, если все номера выпали
    if all_numbers_seen():
        ani.event_source.stop()

    return bars

# Создание анимации
ani = animation.FuncAnimation(
    fig, animate, interval=100, repeat=False
)

# Показываем график
plt.xlabel("Значения (0-36)")
plt.ylabel("Количество появлений")
plt.title("Казино рулетка | Инициализация")
plt.show()


Запускаем, как обычно, через Run в IDLE Shell

 

Это была генерация с придержанной "9".
Полный цикл поля составил 195 спинов.
{\__/}
( • - •) Позволь пожелать
/つ ✿ Тебе Удачи!
Спасибо сказали: Shpilevoy, mouse

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

  • Shpilevoy
  • Shpilevoy аватар
  • VIP
  • VIP
  • ∻♥♚ RMT ♚♥∻
  • Сообщений: 5318

Re: Python - математика рулетки казино в динамике

4 нед. 22 ч. назад - 4 нед. 22 ч. назад
#10
Предыдущий скрипт показывал конкретно сколько раз какой номер вошел в игру, пока все не появились хотя бы 1 раз.

Вот модификация графика =

ПОЛНЫЙ ЦИКЛ В ДИНАМИКЕ ВХОДА В ИГРУ

Этот скрипт рисует во времени по спинам сколько уникальных номеров вошло в игру. 
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import random

# Диапазон номеров рулетки
min_value, max_value = 0, 36

# Инициализация данных
seen_numbers = set()  # Множество уже выпавших номеров
spin_count = 0  # Счетчик спинов
unique_counts =  # Количество уникальных номеров на каждом спине
spins =  # Номера спинов

# Настройка графика
fig, ax = plt.subplots()
line, = ax.plot(, , color='blue', linewidth=2)
ax.set_xlim(0, 100)  # Начальное значение по оси X (будет обновляться)
ax.set_ylim(0, max_value + 1)  # Масштаб по оси Y соответствует количеству номеров

# Функция для обновления графика
def animate(frame):
    global seen_numbers, spin_count, unique_counts, spins

    # Генерация случайного числа
    current_value = random.randint(min_value, max_value)
    spin_count += 1

    # Обновляем множество увиденных номеров
    seen_numbers.add(current_value)

    # Количество увиденных номеров
    count_seen = len(seen_numbers)

    # Обновляем данные для графика
    spins.append(spin_count)
    unique_counts.append(count_seen)
    
    # Обновляем линию
    line.set_data(spins, unique_counts)

    # Обновляем пределы оси X динамически
    ax.set_xlim(0, max(spins) + 10)

    # Обновляем заголовок
    ax.set_title(f"Казино рулетка | Спин № {spin_count} | Уникальные номера: {count_seen}")

    # Останавливаем анимацию, если все номера выпали
    if count_seen == (max_value - min_value + 1):
        ani.event_source.stop()

    return line,

# Создание анимации
ani = animation.FuncAnimation(
    fig, animate, interval=100, repeat=False
)

# Показываем график
plt.xlabel("Номер спина")
plt.ylabel("Уникальные номера")
plt.title("Казино рулетка | Инициализация")
plt.show()

 

Дуга есть всегда.
Первый этап = быстрый набор уникальных.
Второй этап = замедление входа новых.
Третий этап = долгое дотягивание оставшихся.

Обратите внимание, с каким трудом (в этой генерации больше 100 спинов !!!) "доезжают" последние 5 вагонов )))
►ИДЕАЛЬНЫЙ ИГРОК RMT
Loading… ███████[][][] 70%
Спасибо сказали: Mira, klick, Edwerk, Виталий

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

 

E pluribus unum

 

Sup: admin@casino-mining.com

Copyright © 2011-2025 ESPT GO LIMITED Reg. : HE 370907

Vasili Michailidi, 9, 3026, Limassol, Cyprus, phone: +35796363497

 

Excellent Teamwork