Quảng cáo
2 câu trả lời 129
Dưới đây là chương trình bằng Python để tính tổng của dãy số 1+12+13+⋯+1n1 + \frac{1}{2} + \frac{1}{3} + \dots + \frac{1}{n}, trong đó giá trị nn được nhập từ bàn phím:
# Nhập giá trị n từ bàn phím
n = int(input("Nhập một số tự nhiên n: "))
# Khởi tạo biến tổng
total = 0
# Tính tổng 1 + 1/2 + 1/3 + ... + 1/n
for i in range(1, n + 1):
total += 1 / i
# In ra kết quả
print(f"Tổng của dãy số là: {total}")
Giải thích:
Chương trình yêu cầu người dùng nhập giá trị nn, là một số tự nhiên.
Sau đó, chương trình sử dụng vòng lặp for để cộng dồn các giá trị 1i\frac{1}{i} từ i=1i = 1 đến i=ni = n.
Cuối cùng, chương trình in ra tổng các số đã tính.
Ví dụ:
Nếu người dùng nhập n=5n = 5, kết quả tính được sẽ là 1+12+13+14+151 + \frac{1}{2} + \frac{1}{3} + \frac{1}{4} + \frac{1}{5}.
`python
def tinh_tong(n):
"""
Tính tổng S = 1 + 1/2 + 1/3 + ... + 1/n.
Args:
n: Số tự nhiên.
Returns:
Tổng S.
"""
if not isinstance(n, int) or n <= 0:
return "Vui lòng nhập một số tự nhiên dương."
tong = 0.0
for i in range(1, n + 1):
tong += 1.0 / i # Ép kiểu về số thực để đảm bảo độ chính xác
return tong
# Nhập giá trị n từ bàn phím
n = int(input("Nhập số tự nhiên n: "))
# Tính tổng và in ra kết quả
ket_qua = tinh_tong(n)
print("Tổng S =", ket_qua)
`
**Giải thích chương trình:**
1. **Định nghĩa hàm t∈h→ng(n):**
* Hàm này nhận một số tự nhiên n làm đối số.
* Kiểm tra xem n có phải là một số tự nhiên dương hay không. Nếu không, trả về một thông báo lỗi.
* Khởi tạo biến →ng bằng 0.0 (sử dụng số thực để đảm bảo độ chính xác).
* Sử dụng vòng lặp for để duyệt qua các số từ 1 đến n.
* Trong mỗi vòng lặp, cộng 1.0i vào biến →ng. Việc ép kiểu 1.0 đảm bảo phép chia thực hiện trên số thực, tránh việc làm tròn xuống 0 đối với các phiên bản Python 2.
* Trả về giá trị của biến →ng.
2. **Nhập giá trị n từ bàn phím:**
* Sử dụng hàm ∈put() để nhập một chuỗi từ bàn phím.
* Sử dụng hàm ∫() để chuyển đổi chuỗi vừa nhập thành một số nguyên.
3. **Tính tổng và in ra kết quả:**
* Gọi hàm t∈h→ng(n) để tính tổng S.
* In ra kết quả bằng hàm pr∫().
**Ví dụ:**
Nếu bạn nhập n=5, chương trình sẽ tính tổng S=1+12+13+14+15 và in ra kết quả là TổngS=2.283333333333333.
Quảng cáo
Câu hỏi hot cùng chủ đề
-
29669