เมื่อต้องการพิมพ์ Happy numbers ทั้งหมดระหว่าง 1 และ 100 ใช้ลูปธรรมดาและตัวดำเนินการ '%', '+', '//'
Happy number คือตัวเลขที่สุดท้ายกลายเป็น 1 เมื่อแทนที่ด้วยผลรวมกำลังสองของทุกหลักในตัวเลข
เพื่อพิมพ์ Happy numbers ในช่วงที่กำหนด ใช้ลูปธรรมดา
ตัวอย่าง
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
print("The list of happy numbers between 1 and 100 are : ")
for i in range(1, 101):
my_result = i
while my_result != 1 and my_result != 4:
my_result = check_happy_num(my_result)
if my_result == 1:
print(i)
ผลลัพธ์
The list of happy numbers between 1 and 100 are : 1 7 10 13 19 23 28 31 32 44 49 68 70 79 82 86 91 94 97 100
คำอธิบาย
- กำหนดเมธอด 'check_happy_num' รับตัวเลขเป็นพารามิเตอร์
- ตรวจสอบตัวเลขมากกว่า 0
- กำหนดตัวแปร sum = 0
- หารตัวเลขด้วย 10 หาเศษ กำหนดให้ค่า
- คูณเศษกับตัวเองบวกเข้าตัวแปร 'sum'
- เกิดขึ้นกับทุกหลักของตัวเลข
- คืนค่า sum เป็นเอาต์พุท
- กำหนดช่วง 1 ถึง 101 วนลูปตัวเลข
- ทุกตัวเลขเรียกเมธอดที่กำหนดไว้ก่อนหน้า
- หากเป็น Happy number แสดงบนคอนโซล