.
Это неправильно.
будет если каждый раунд ставка одинаковая. Если мы каждый раз ставим все(ставка меняется) - то будет
И всё-таки правильно, как
Geen написал. Если 10000 человек придёт в игру и каждый поставит 100р. и каждый сыграет 10 раундов, то отношение итогового суммарного капитала всех людей к первоначальному составит
Проверил численным методом, код прилагаю.
Сайт для проверки.
Код:
#include <iostream>
#include <vector>
#include <cstdlib>
#include <ctime>
int main() {
srand(time(0)); // Инициализация генератора случайных чисел
int num_players = 10000;
int num_rounds = 10;
double initial_capital = 100.0;
std::vector<double> capitals(num_players, initial_capital);
double total_initial_capital = num_players * initial_capital;
for (int i = 0; i < num_rounds; ++i) {
for (int j = 0; j < num_players; ++j) {
double bet = capitals[j] / 2;
capitals[j] -= bet;
if (rand() % 100 < 60) { // 60% шанс выиграть
capitals[j] += 2 * bet;
}
}
}
double total_final_capital = 0.0;
for (int j = 0; j < num_players; ++j) {
total_final_capital += capitals[j];
}
double ratio = total_final_capital / total_initial_capital;
std::cout << "Capital expected value: " << ratio << std::endl;
return 0;
}
PS Код сгенерировал BingAI без ошибок, только русский текст пришлось на английский заменить, иначе при выводе в консоль абракадабра. Запрос такой:
напиши программу на си++.
Нужно вычислить численным методом отношение суммарного капитала всех игроков после игры и до игры. 10000 игроков вносят капитал 100 рублей и играют 10 раундов, в каждом раунде ставят половину текущего капитала, при проигрыше ставка теряется, при выигрыше удваивается и прибавляется к капиталу. Вероятность выигрыша 60%, проигрыша 40%.