Bài 22
Đề bài: Tính phân phối nhị thức X ~ B(n, p).
P(X=k) = C(n,k) * p^k * (1-p)^(n-k).
In toan bo bằng phân phối xác suất.
Tính ky vống E(X) = n*p và phương sai D(X) = n*p*(1-p).
Ví dụ: n = 10, p = 0.3
Kết quả:
k=0: P = 0.0282
k=1: P = 0.1211
...
k=10: P = 0.0000
E(X) = 3.0, D(X) = 2.1
Đăng nhập để giáo viên có thể giao bài và nhận bài nộp của bạn.
Câu trả lời
import math
n = int(input("So phep thu n: "))
p = float(input("Xac suat thanh cong p: "))
q = 1 - p
print(f"\nBang phan phoi xac suat X ~ B({n}, {p}):")
print(f"{'k':>5} {'P(X=k)':>12} {'P(X<=k)':>12}")
print("-" * 34)
luy_ke = 0
max_k = 0
max_p = 0
for k in range(n + 1):
c_nk = math.comb(n, k)
prob = c_nk * (p**k) * (q**(n-k))
luy_ke += prob
if prob > max_p:
max_p = prob
max_k = k
print(f"{k:>5} {round(prob,6):>12} {round(luy_ke,6):>12}")
ky_vong = n * p
phuong_sai = n * p * q
print(f"\nE(X) = n*p = {ky_vong}")
print(f"D(X) = n*p*q = {phuong_sai}")
print(f"Gia tri xac suat lon nhat: k = {max_k}, P = {round(max_p,6)}")