Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะค้นหาผลรวมของจำนวนธรรมชาติโดยใช้การเรียกซ้ำใน Python ได้อย่างไร


ถ้าฟังก์ชันเรียกตัวเอง เรียกว่าฟังก์ชันแบบเรียกซ้ำ เพื่อป้องกันไม่ให้ตกหล่นในวงอนันต์ การเรียกซ้ำจะถูกวางในคำสั่งแบบมีเงื่อนไข

โปรแกรมที่ตามมาจะรับตัวเลขเป็นอินพุตจากผู้ใช้และส่งเป็นอาร์กิวเมนต์ไปยังฟังก์ชัน rsum() มันเรียกตัวเองซ้ำ ๆ โดยลดค่าอาร์กิวเมนต์ในแต่ละครั้งจนถึง 1

def rsum(n):
    if n <= 1:
        return n
    else:
        return n + rsum(n-1)

num = int(input("Enter a number: "))
ttl=rsum(num)
print("The sum is",ttl)

ตัวอย่างการรันโปรแกรมด้านบนจะพิมพ์ผลรวมของตัวเลขธรรมชาติไม่เกินจำนวนอินพุต

Enter a number: 10
The sum is 55