Khi cần kiểm tra số cho trước có phải Happy number, dùng toán tử '%', '//', '+'.
Số Happy là số kết thúc bằng 1 khi thay bằng tổng bình phương các chữ số.
Minh họa:
Ví dụ
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("Đang kiểm tra số")
if my_result == 1:
print(str(my_num) + " là số Happy")
elif my_result == 4:
print(str(my_num) + " không phải số Happy")
Đầu ra
Đang kiểm tra số 86 là số Happy
Giải thích
- Định nghĩa 'check_happy_num' nhận số.
- Kiểm tra số > 0.
- Gán sum = 0.
- Chia 10 lấy dư, gán giá trị.
- Dư nhân với chính nó cộng vào 'sum'.
- Xét tất cả chữ số.
- Trả về sum.
- Định nghĩa số, copy.
- Kiểm tra happy number bằng hàm đã định nghĩa.
- Hiển thị thông báo.