Học Python - Bài 88 Viết hàm P(x,n) để tính giá trị x^n.
DANH SÁCH TÓM TẮT:
Giới Thiệu
Hàm mũ P(x, n) tính giá trị của x lũy thừa n, tức là x^n. Bài viết này sẽ hướng dẫn ba cách viết hàm tính lũy thừa: sử dụng vòng lặp, đệ quy và thư viện có sẵn của Python.
Cách Thực Hiện
def tinh_luy_thua_vong_lap(x, n): result = 1 for _ in range(n): result *= x return result
def tinh_luy_thua_de_quy(x, n): if n == 0: return 1 elif n % 2 == 0: half_power = tinh_luy_thua_de_quy(x, n // 2) return half_power * half_power else: return x * tinh_luy_thua_de_quy(x, n - 1)
Python có hàm math.pow() giúp tính lũy thừa nhanh chóng và tối ưu.
import math def tinh_luy_thua_math(x, n): return math.pow(x, n)
Chương Trình Hoàn Chỉnh
import math
def tinh_luy_thua_vong_lap(x, n):
result = 1
for _ in range(n):
result *= x
return result
def tinh_luy_thua_de_quy(x, n):
if n == 0:
return 1
elif n % 2 == 0:
half_power = tinh_luy_thua_de_quy(x, n // 2)
return half_power * half_power
else:
return x * tinh_luy_thua_de_quy(x, n - 1)
def tinh_luy_thua_math(x, n):
return math.pow(x, n)
# Nhập giá trị x và n
x = float(input("Nhập số thực x: "))
n = int(input("Nhập số nguyên dương n: "))
if n >= 0:
print(f"{x}^{n} theo vòng lặp: {tinh_luy_thua_vong_lap(x, n)}")
print(f"{x}^{n} theo đệ quy: {tinh_luy_thua_de_quy(x, n)}")
print(f"{x}^{n} theo thư viện math: {tinh_luy_thua_math(x, n)}")
else:
print("Vui lòng nhập số nguyên không âm.") Ví Dụ Chạy Chương Trình
Nhập số thực x: 2
Nhập số nguyên dương n: 5
2^5 theo vòng lặp: 32
2^5 theo đệ quy: 32
2^5 theo thư viện math: 32.0
So Sánh Ba Cách
| Phương pháp | Ưu điểm | Nhược điểm |
| Vòng lặp | Đơn giản, dễ hiểu | Chậm hơn so với cách tối ưu |
| Đệ quy | Tối ưu với thuật toán chia để trị | Có thể gây lỗi tràn bộ nhớ nếu n quá lớn |
| math.pow() | Nhanh chóng, tiện lợi | Trả về kết quả kiểu float thay vì int |
Kết Luận
Cả ba cách đều có ưu điểm riêng. Nếu muốn dễ hiểu, hãy dùng vòng lặp. Nếu cần tối ưu, hãy dùng đệ quy. Nếu muốn nhanh gọn, hãy dùng math.pow(). Chúc bạn học tốt Python!
Cách Tải Tài liệu 5 Bí kíp chinh phục Python Tài liệu ôn thi HSG…
100 Bài Lập Trình Python Có Lời Giải Cơ Bản Đến Nâng Cao PDF –…
100 Đề Tổng Hợp Thi Tin Học Ứng Dụng Cơ Bản – Đại học Khoa…
⭐ Giới thiệu: Laptop lỗi ngay lúc đang gấp? Đừng hoảng! Laptop đang dùng ngon…
✅ Giới thiệu Bạn đang dùng PC thì đột nhiên đơ, chậm, xoay vòng mãi…
Mở bài – Khó khăn khi laptop gặp sự cố nhưng không thể mang ra…
This website uses cookies.