เมื่อจำเป็นต้องตรวจสอบว่าตัวเลขที่กำหนดเป็นตัวเลขที่มีความสุขหรือไม่ สามารถใช้ตัวดำเนินการ '%', ตัวดำเนินการ '//' และตัวดำเนินการ '+' ได้
หมายเลข Happy คือหมายเลขที่ลงท้ายด้วย 1 เมื่อแทนที่ด้วยผลรวมของกำลังสองของทุกหลักในตัวเลข
ด้านล่างนี้เป็นการสาธิตสำหรับสิ่งเดียวกัน -
ตัวอย่าง
def check_happy_num(my_num): remaining = sum_val = 0 while(my_num > 0): remaining = my_num%10 sum_val = sum_val + (remaining*remaining) my_num = my_num//10 return sum_val; my_num = 86 my_result = my_num while(my_result != 1 and my_result != 4): my_result = check_happy_num(my_result); print("The number is being checked") if(my_result == 1): print(str(my_num) + " is a happy number"); elif(my_result == 4): print(str(my_num) + " isn't a happy number");
ผลลัพธ์
The number is being checked 86 is a happy number
คำอธิบาย
- มีการกำหนดวิธีการชื่อ 'check_happy_num' ซึ่งใช้ตัวเลขเป็นพารามิเตอร์
- ตรวจสอบเพื่อดูว่าตัวเลขมากกว่า 0 หรือไม่
- ตัวแปรผลรวมถูกกำหนดให้เป็น 0
- มันหารตัวเลขด้วย 10 แล้วนำเศษที่เหลือมากำหนดค่า
- ส่วนที่เหลือนี้คูณด้วยตัวมันเองและเพิ่มลงในตัวแปร 'sum'
- สิ่งนี้เกิดขึ้นกับทุกหลักของตัวเลข
- ผลรวมนี้จะถูกส่งคืนเป็นผลลัพธ์
- หมายเลขถูกกำหนด และสำเนาถูกสร้างขึ้น
- ตรวจสอบเพื่อดูว่าเป็นตัวเลขที่มีความสุขหรือไม่โดยการเรียกใช้ฟังก์ชันที่กำหนดไว้ก่อนหน้านี้
- ข้อความที่เกี่ยวข้องจะแสดงบนคอนโซล