Khi cần tìm tổng các chữ số trong một số mà không sử dụng phương pháp đệ quy, có thể sử dụng toán tử ‘%’, toán tử ‘+’ và toán tử ‘//’.
Dưới đây là một minh chứng cho điều tương tự -
Ví dụ
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))
Đầu ra
The number is : 12345671 The method to calculate sum of digits is being called... The sum of 12345671 is : 29
Giải thích
- Một phương thức có tên 'sum_of_digits' được xác định, phương thức này nhận một số làm tham số.
- Ban đầu, một tổng được gán cho 0.
- Số bị chia cho 10 và phần còn lại thu được sẽ được cộng vào tổng.
- Số lại được chia tầng cho 10 và được gán cho chính số đó.
- Giá trị tổng được trả về dưới dạng đầu ra từ hàm.
- Một số được xác định và hiển thị trên bảng điều khiển.
- Phương thức được gọi bằng cách chuyển số này dưới dạng tham số.
- Id đầu ra được hiển thị trên bảng điều khiển.