ПочатиПочніть безкоштовно

Обчислення беззбиткової ціни лотерейного квитка

Симуляції дають змогу ставити тонші запитання, на які не завжди є проста аналітична відповідь. Замість розв'язання складної формули ми безпосередньо отримуємо багато вибіркових результатів. Ми можемо проводити експерименти, змінюючи вхідні дані й вивчаючи, як ці зміни впливають на систему. Наприклад, маючи достатньо реалістичну модель глобальних погодних процесів, можна оцінити вплив зростання викидів парникових газів.

У прикладі з лотереєю нам може бути цікаво, наскільки дорогим має бути квиток, щоб його було недоцільно купувати. Щоб це зрозуміти, потрібно змінювати вартість квитка й подивитися, коли очікуваний виграш стане від'ємним.

grand_prize, num_tickets і chance_of_winning уже завантажені в середовище.

Ця вправа є частиною курсу

Статистичне моделювання в Python

Переглянути курс

Інструкції до вправи

  • Встановіть sims на 3000, а змінну lottery_ticket_cost — на 0.
  • Якщо середнє значення outcomes опускається нижче 0, виконайте break із циклу while.
  • Інакше збільшіть lottery_ticket_cost на 1.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Initialize simulations and cost of ticket
sims, lottery_ticket_cost = ____, ____

# Use a while loop to increment `lottery_ticket_cost` till average value of outcomes falls below zero
while 1:
    outcomes = np.random.choice([-lottery_ticket_cost, grand_prize-lottery_ticket_cost],
                 size=sims, p=[1-chance_of_winning, chance_of_winning], replace=True)
    if outcomes.mean() < 0:
        ____
    else:
        ____ += 1
answer = lottery_ticket_cost - 1

print("The highest price at which it makes sense to buy the ticket is {}".format(answer))
Редагувати та запускати код