เมื่อจำเป็นต้องตรวจสอบว่าตัวเลขที่กำหนดเป็นเลขคี่หรือจำนวนคู่โดยใช้การเรียกซ้ำ สามารถใช้การเรียกซ้ำได้
การเรียกซ้ำจะคำนวณเอาต์พุตของบิตขนาดเล็กของปัญหาที่ใหญ่กว่า และรวมบิตเหล่านี้เข้าด้วยกันเพื่อแก้ปัญหาที่ใหญ่กว่า
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสำหรับสิ่งเดียวกัน -
def check_odd_even(my_num): if (my_num < 2): return (my_num % 2 == 0) return (check_odd_even(my_num - 2)) my_number = int(input("Enter the number that needs to be checked:")) if(check_odd_even(my_number)==True): print("The number is even") else: print("The number is odd!")
ผลลัพธ์
Enter the number that needs to be checked:48 The number is even
คำอธิบาย
- มีการกำหนดวิธีการชื่อ 'check_odd_even' ซึ่งใช้ตัวเลขเป็นพารามิเตอร์
- ถ้าตัวเลขน้อยกว่า 2 ส่วนที่เหลือของตัวเลขเมื่อหารด้วย 2 จะถูกคำนวณและทำเครื่องหมายด้วย 0
- ฟังก์ชันถูกเรียกอีกครั้ง และครั้งนี้ พารามิเตอร์ที่ส่งผ่านคือตัวเลขที่ลดลง 2
- นอกฟังก์ชัน ผู้ใช้จะใช้ตัวเลขเป็นอินพุต
- มีการเรียกใช้ฟังก์ชันและตรวจสอบเพื่อดูว่าเป็น 'จริง' หรือไม่ หากใช่ ฟังก์ชันนี้จะถูกกำหนดเป็นเลขคู่
- มิฉะนั้นจะถือเป็นเลขคี่
- ส่งคืนเป็นเอาต์พุต