본문 바로가기
코딩 연습/파이썬 기초(예제)

암스트롱 수, 거꾸로 정수 등 [파이썬 기초 예제]

by good4me 2022. 6. 21.

goodthings4me.tistory.com

네이버 지식에 질문으로 올라왔던 문제. 파이썬으로 암스트롱 수, 거꾸로 정수, 1부터 100까지의 짝수 합, 두 정수 사이의 합 등을 구하는 코딩 연습문제 풀이

 

 

암스트롱 수, 거꾸로 정수 등

 

[암스트롱 수 알아보기]

import math

num = 100
while num < 1000:
    n_str = str(num)
    num_sum = int(n_str[0])*100 + int(n_str[1])*10 + int(n_str[2])
    num3 = math.pow(int(n_str[0]), 3) + math.pow(int(n_str[1]), 3) + math.pow(int(n_str[2]), 3)

    if num_sum == num3:
        print(num, end=' ')

    num += 1



[실행 결과]
153 370 371 407

* 암스트롱 수는 xyz로 표시되는 세 자리의 정수 중에서 각 자리의 수를 세제곱한 수의 합과 자신이 같은 수

 

good4me.co.kr

 

[거꾸로 정수]

while True:
    try:
        num = int(input('정수를 입력하시오: '))
    except:
        print('숫자를 입력하세요!')
        continue

    if num == -99:
        print('프로그램을 종료합니다.')
        break
    
    if str(num) == str(num)[::-1]:
        print(f'{num}은(는) 거꾸로 정수입니다.')
    else:
        print(f'{num}은(는) 거꾸로 정수가 아님니다.')
        
        
        
[실행 결과]
정수를 입력하시오: 234
234은(는) 거꾸로 정수가 아님니다.
정수를 입력하시오: 232
232은(는) 거꾸로 정수입니다.
정수를 입력하시오: -99
프로그램을 종료합니다.

* 정수를 거꾸로 나열해도 그 값이 원래의 값과 같은 정수를 구하는 문제

 

[for문 while문으로 100까지 짝수의 합 구하기]

### for 문으로 구하기
sum = 0
for n in range(1, 101):
    if n % 2 == 0:
        sum += n
print(f'1에서 100까지의 수 중에서 짝수의 합 : {sum}')


[실행결과]
1에서 100까지의 수 중에서 짝구의 합 : 2550


### while 문으로 구하기
_sum = 0
num = 1
while num <= 100:
    if num % 2 == 0:
        _sum += num
    num += 1
print(f'1에서 100까지의 수 중에서 짝구의 합 : {_sum}')


[실행결과]
1에서 100까지의 수 중에서 짝구의 합 : 2550


### 시작 정수와 끝 정수를 입력받아 전체 합을 구하기
s_num = int(input('시작 정수를 입력하세요: '))
e_num = int(input('끝 정수를 입력하세요: '))

sum = 0
for n in range(s_num, e_num + 1):
    sum += n

print(f'{s_num}에서 {e_num}까지 정수의 합 : {sum}')


[실행 결과]
시작 정수를 입력하세요: 2
끝 정수를 입력하세요: 6
2에서 6까지 정수의 합 : 20

 

 

 

댓글