알고리즘 연습 [자릿수더하기]
자릿수 더하기
문제
sum_digit함수는 자연수를 전달 받아서 숫자의 각 자릿수의 합을 구해서 return합니다.
예를들어 number = 123이면 1 + 2 + 3 = 6을 return하면 됩니다.
sum_digit함수를 완성해보세요.
나의 풀이
def sum_digit(number):
return sum([int(i)for i in list(str(number))])
다른 풀이
def sum_digit(number):
if number < 10:
return number;
return (number % 10) + sum_digit(number // 10)
- // : 나눗셈 후 소수점 아랫자리를 버림
123을 넣으면 3 + sum_digit(12) -> 3 + 2 + sum_digit(1) -> 3 + 2 + 1