Tính e^x không dùng hàm thư viện, sử dụng chuỗi Taylor: e^x = 1 + x + x²/2! + x³/3! + .... Tính đến n = 20 hạng tử để đủ độ chính xác.
Ví dụ: x = 5 → ≈ 148.4131.
Thuật toán lặp tối ưu
- Giữ biến
nume = x^ivàfact = i!cập nhật tăng dần. - Mỗi bước:
res += nume / fact, sau đónume *= x,fact *= (i+1).
Ví dụ mã nguồn
def solve(x):
fact = 1
res = 1
n = 20
nume = x
for i in range(1, n):
res += nume / fact
nume *= x
fact *= (i + 1)
return res
x = 5
print(solve(x)) # 148.413159...
Đầu vào / Đầu ra
Input: 5
Output: 148.4131591025766