Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
09.09.2026
Размер:
140 Кб
Скачать

Четвертое лекционное задание

Выполнила Бараева Елизавета гр. 2383

Формулы:

Формула для расчета среднего квадратичного отклонения 

Формула для расчета математического ожидания 

Формула для расчета дисперсии

Формула для расчета теоретического среднего квадратичного отклонения

Задание 1

Была написана функция, которая возвращает случайное число (0 или 1) с заданной вероятностью нуля.

def generator(probability_0): if probability_0 < 0 or probability_0 > 1: raise Exception("Wrong probability") random_value = random.random() if random_value <= probability_0: return 0 elif random_value <= 1: return 1

Задание 2

A_B = [] # массив для сохранения пар (строка, столбец) for _ in range(100): A_B.append((generator(0.5), generator(0.5))) # заполнение массива парами money_A = [] # массив для подсчета монет игрока А for i in range(100): if A_B[i][0] == A_B[i][1]: money_A.append(2) elif A_B[i][0] == 1 and A_B[i][1] == 0: money_A.append(-1) elif A_B[i][0] == 0 and A_B[i][1] == 1: money_A.append(-3) average = sum(money_A)/100 # среднее значение игры print("Выигрыш\проигрыш игрока А:", sum(money_A), "\nСреднее значение:", average) mat_exp_win = 2 * 0.25 + 2 * 0.25 # мат ожидание выигрыша mat_exp_lose = - 3 * 0.25 - 1 * 0.25 # мат ожидание проигрыша print("Мат. ожидание выигрыша:", mat_exp_win) print("Мат. ожидание проигрыша:", mat_exp_lose) msd = 0 # инициализация СКО for i in range(100): msd += (money_A[i] - average) ** 2 # расчёт СКО msd = msd / 100 # расчёт СКО print("СКО:", msd) dispersion = 2 ** 2 * 0.25 + 2 ** 2 * 0.25 + (-1) ** 2 * 0.25 + (-3) ** 2 * 0.25 - (2 * 0.25 + 2 * 0.25 + -1 * 0.25 + -3 * 0.25) ** 2 # расчёт дисперсии theoretical_msd = dispersion ** 0.5 # расчёт теоретического СКО print("Дисперсия:", dispersion) print("Теоретическое СКО:", theoretical_msd)

Результат:

Выигрыш\проигрыш игрока А: 15

Среднее значение: 0.15

Мат. ожидание выигрыша: 1.0

Мат. ожидание проигрыша: -1.0

СКО: 4.327500000000006

Дисперсия: 4.5

Теоретическое СКО: 2.1213203435596424

Задание 3

A_B = [] # массив для сохранения пар (строка, столбец) for _ in range(100): A_B.append((generator(0.5), generator(0.25))) # заполнение массива парами money_A = [] # массив для подсчета монет игрока А for i in range(100): if A_B[i][0] == A_B[i][1]: money_A.append(2) elif A_B[i][0] == 1 and A_B[i][1] == 0: money_A.append(-1) elif A_B[i][0] == 0 and A_B[i][1] == 1: money_A.append(-3) average = sum(money_A)/100 # среднее значение игры print("Выигрыш\проигрыш игрока А:", sum(money_A), "\nСреднее значение:", average) mat_exp_win = 2 * 0.125 + 2 * 0.375 # мат ожидание выигрыша mat_exp_lose = - 3 * 0.375 - 1 * 0.125 # мат ожидание проигрыша print("Мат. ожидание выигрыша:", mat_exp_win) print("Мат. ожидание проигрыша:", mat_exp_lose) msd = 0 # инициализация СКО for i in range(100): msd += (money_A[i] - average) ** 2 # расчёт СКО msd = msd / 100 # расчёт СКО print("СКО:", msd) dispersion = 2 ** 2 * 0.125 + 2 ** 2 * 0.375 + (-1) ** 2 * 0.125 + (-3) ** 2 * 0.375 - (2 * 0.125 + 2 * 0.375 + -1 * 0.125 + -3 * 0.375) ** 2 # расчёт дисперсии theoretical_msd = dispersion ** 0.5 # расчёт теоретического СКО print("Дисперсия:", dispersion) print("Теоретическое СКО:", theoretical_msd)

Результат:

Выигрыш\проигрыш игрока А: -14

Среднее значение: -0.14

Мат. ожидание выигрыша: 1.0

Мат. ожидание проигрыша: -1.25

СКО: 5.640400000000008

Дисперсия: 5.4375

Теоретическое СКО: 2.331844763272204

Соседние файлы в папке ИДЗ по ДМиТИ 2023