เมื่อจำเป็นต้องค้นหาผลรวมของตัวเลขในตัวเลขโดยไม่ใช้วิธีเรียกซ้ำ สามารถใช้ตัวดำเนินการ '%', ตัวดำเนินการ '+' และตัวดำเนินการ '//' ได้
ด้านล่างนี้เป็นการสาธิตสำหรับสิ่งเดียวกัน -
ตัวอย่าง
def sum_of_digits(my_num): sum_val = 0 while (my_num != 0): sum_val = sum_val + (my_num % 10) my_num = my_num//10 return sum_val my_num = 12345671 print("The number is : ") print(my_num) print("The method to calculate sum of digits is being called...") print("The sum of " +str(my_num) + " is : ") print(sum_of_digits(my_num))
ผลลัพธ์
The number is : 12345671 The method to calculate sum of digits is being called... The sum of 12345671 is : 29
คำอธิบาย
- มีการกำหนดวิธีการชื่อ 'sum_of_digits' ซึ่งใช้ตัวเลขเป็นพารามิเตอร์
- ผลรวมเริ่มต้นเป็น 0
- จำนวนหารด้วย 10 และส่วนที่เหลือจะถูกบวกเข้ากับผลรวม
- ตัวเลขถูกหารด้วย 10 อีกครั้งและกำหนดให้กับตัวเลขเอง
- ค่าผลรวมจะถูกส่งกลับเป็นผลลัพธ์จากฟังก์ชัน
- มีการกำหนดตัวเลขและแสดงบนคอนโซล
- เมธอดนี้เรียกโดยส่งตัวเลขนี้เป็นพารามิเตอร์
- รหัสเอาต์พุตที่แสดงบนคอนโซล