프로그램

[파이썬] 문제 : 4자리의 정수에서 각 자리수의 합 계산

오디세이99 2023. 4. 3. 14:30
728x90
반응형

in_n =  int(input('정수='))

lst = []                # 자리수 분리한 결과를 담을 리스트 변수
tmp = in_n              # 입력 받은 정수를 임시로 사용할 변수 tmp에 대입
while tmp > 10:        # tmp(처음에는 입력 받은 정수와 같음. 자리를 빼가기 때문에 10보타 클때만 반복문 실행)
    n = tmp%10          # tmp%10은 10으로 나눈 나머지가 됨. 즉 1234%10 이면 1234를 10으로 나누고 나머지 4가 됨
    tmp = int(tmp//10)  # tmp//10 이면 나눈 몫 이 됨. 즉 1234//10 이면 123이 됨. 이 결과를 다시 tmp에 대입해서 계속 게산
    lst.append(n)       # 제일 뒤의 자리수를 리스트에 담아 둠(1234 일때 4,3,2로 담게 됨)
    # print(n, tmp)       # 계산이 잘 되는지 보기 위한 출력
    
lst.append(tmp)         # 위 반복문에서는 1234 일떼 4,3,2까지 구함. 남은 1을 담음. 
# print(lst)              
# lst = lst[::-1]       # 1234를 위와 같이 하면 lst에 4,3,2,1로 됨. 이를 1,2,3,4로 역순배치 함. 각 자리수 합을 구하기 때문에 역순도 됨
# print(lst)
print(sum(lst))         # sum() 함수를 사용해 리스트의 합계 구함()

728x90
반응형