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

จะเขียนฟังก์ชั่นเรียกซ้ำใน Python ได้อย่างไร?


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

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

ปัจจัย ของจำนวนหนึ่งเป็นผลคูณของจำนวนเต็มทั้งหมดตั้งแต่ 1 ถึงจำนวนนั้น

ตัวอย่างเช่น แฟกทอเรียลของ 9 (แสดงเป็น 9!) คือ 1*2*3*4*5*6*7*8*9 =362880

ตัวอย่างที่ 1

def factorial(i):
   if i == 1:
      return 1
   else:
      return (i * factorial(i-1))
number = 9
print("The factorial of", number, "is", factorial(number))

ผลลัพธ์

The factorial of 9 is 362880


ในโปรแกรมด้านบน factorial() เป็นฟังก์ชันแบบเรียกซ้ำตามที่เรียกตัวเอง การเรียกแต่ละฟังก์ชันจะคูณตัวเลขด้วยแฟกทอเรียลของจำนวน 1 จนกว่าจำนวนจะเท่ากับหนึ่ง

เช่น วางกระจกเงาคู่ขนานสองอันหันเข้าหากัน วัตถุใด ๆ ที่อยู่ระหว่างพวกเขาจะถูกสะท้อนซ้ำ

ตัวอย่างที่ 2

def Function(x):
   if (x < 1):
      return
   else:
      print( x,end = " ")
      Function(x-1)
      print(x,end = " ")
      return
x = 5
Function(x)

ผลลัพธ์

5 4 3 2 1 1 2 3 4 5