문제
하나의 자연수를 입력 받아 각 자릿수의 합을 계산하는 프로그램을 작성하라.
입력
입력으로 자연수 N이 주어진다.
출력
각 자릿수의 합을 출력한다.
풀이
# ///////////////////////////////////////////////////////////////////////////////////
number=list(input())
number=list(map(int,number))
sum_number=sum(number)
print(sum_number)
# ///////////////////////////////////////////////////////////////////////////////////
각 자릿수의 합은 자주 쓰이는 개념이므로 외워둔다.
>>> number="6789" # 문자열 숫자
>>> number
'6789'
>>> number=list(number) # list를 통해 각 자릿수 쪼개기
>>> number
['6', '7', '8', '9']
>>> number=list(map(int,number)) # map으로 정수화하기
>>> number
[6, 7, 8, 9]
>>> sum_number=sum(number) # sum으로 list의 합 구하기
>>> sum_number
30
위 코드를 천천히 읽어보기 바란다.
문자열의 숫자를 입력받았을 때,
1. list 함수로 각 자리 숫자가 리스트의 요소가 되도록 한다. 각 요소는 아직 문자열이다.
2. list(map())을 통해 리스트 내의 문자열을 정수로 바꿔준다.
3. sum을 사용하여 리스트 내 정수의 합을 구하면, 각 자릿수의 합이 된다.
'파이썬 > 파이썬 알고리즘' 카테고리의 다른 글
[swea - 파이썬] 1545. 거꾸로 출력해 보아요 (0) | 2021.07.14 |
---|---|
[swea - 파이썬] 2047. 신문 헤드라인 (0) | 2021.07.14 |
파이썬 프로그래머스 level 1. 소수 만들기 (1) | 2021.05.25 |
파이썬 코드업 6043번 6043 : [기초-산술연산] 실수 2개 입력받아 나눈 결과 계산하기(py) (0) | 2021.05.06 |
파이썬 코드업 6042번 6042 : [기초-값변환] 실수 1개 입력받아 소숫점이하 자리 변환하기(설명)(py) (0) | 2021.05.05 |
댓글