Để in các số từ 1 đến n mà không dùng vòng lặp, ta dùng đệ quy: gọi hàm với n-1 rồi in n.
Ví dụ
def print_numbers(n):
if n > 0:
print_numbers(n - 1)
print(n)
limit = 6
print("Gi hạn trên:", limit)
print("Các số từ 1 đến", limit, ":")
print_numbers(limit)
Kết quả
Giới hạn trên: 6 Các số từ 1 đến 6: 1 2 3 4 5 6
Giải thích
- Hàm
print_numberskiểm tra nếu n > 0. - Gọi đệ quy với n-1 trước (đảm bảo in từ nhỏ đến lớn).
- Sau khi gọi đệ quy xong, in giá trị n hiện tại.
- Điều kiện dừng: n <= 0.
- Lưu ý: Đệ quy có giới hạn độ sâu (thường 1000), không phù hợp với n lớn.