재귀를 사용하지 않고 숫자의 합을 구해야 하는 경우 '%' 연산자, '+' 연산자, '//' 연산자를 사용할 수 있습니다.
아래는 동일한 데모입니다 -
예시
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으로 나눈 값이며 숫자 자체에 할당됩니다.
- 합계 값은 함수의 출력으로 반환됩니다.
- 숫자가 정의되고 콘솔에 표시됩니다.
- 이 숫자를 매개변수로 전달하여 메서드를 호출합니다.
- 콘솔에 표시되는 출력 ID입니다.