테스트 사이트 - 개발 중인 베타 버전입니다

파이썬 코딩 질문

파이썬어렵다 4년 전 조회 3,133

[code]print("<<의 숫자 추출 연산>>") num=int(input("▣ 네자릿수 정수 =>")) print() print("==== 출력결과 ====") print(f"천의 자리:{num//1000}") num=num%1000 print(f"백의 자리:{num//100}") num=num%100 print(f"십의 자리:{num//10}") num=num%10 print(f"일의 자리:{num//1}") [code/] 밑에 사진 처럼 하고싶은데 마지막 줄을 모르겠어서... 도움좀 주세용ㅜㅜ

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

I
4년 전

안녕하세요?

 

이미 거의 다 맞게 작성하신 것 같은데, 이를 조금만 더 보완하면 다음과 같습니다 ^^

 

각 자릿수를 4개의 변수에 넣은 후에 덧셈을 하는 방법이에요!

 

</p>

<p>print('<<의 숫자 추출 연산>>\n')

num = int(input('▣ 네자릿수 정수 => '))

print('\n==== 출력결과 ====')</p>

<p> </p>

<p>a = num // 1000

print(f'천의 자리:{a}')

num %= 1000

b = num // 100

print(f'백의 자리:{b}')

num %= 100

c = num // 10

print(f'십의 자리:{c}')

d = num % 10

print(f'일의 자리:{d}')</p>

<p> </p>

<p>print(f'{a} + {b} + {c} + {d} = {a + b + c + d}') # 각 자릿수를 더합니다.</p>

<p>

 

 

참고로 문자열이 정수와 달리 iterable한 점을 활용하여

 

자릿수마다 변수를 두지 않고 다음과 같은 방법으로 작성할 수 있어요 ^-^

 

</p>

<p>print('<<의 숫자 추출 연산>>\n')

num = input('▣ 네자릿수 정수 => ')

print('\n==== 출력결과 ====')</p>

<p> </p>

<p>num_list = []

for i in num:

    num_list.append(i)

digit_list = ['천', '백', '십', '일']</p>

<p> </p>

<p>for i, j in zip(digit_list, num_list):

    print(f'{i}의 자리: {j}')</p>

<p> </p>

<p>for cnt, i in enumerate(num_list):

    if cnt != 3:

        print(f'{i} + ', end = '')

    else:

        print(f'{i} = ', end = '')

print(sum([int(x) for x in num_list]))</p>

<p>

 

그럼 즐거운 주말 되세요~! ^^

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인