본문 바로가기
프로그램/Python 1000제

Python 32제] A,B 두 수 사이의 합을 구하시오.

by 건티 2021. 11. 16.
728x90

 

출처 : 반크 2021년 10월 25일 독도의 날 포스터

 

문제]

임의의 자연수 두 수 A, B(A<=B)를 입력하여 두수 사이의 합을 구하는 프로그램을 작성하시오.

 

 

참고풀이1]

#임의의 자연수를 입력한다.
A,B=map(int, input("임의의 자연수 두 개를 입력하시오(예: 10 100) : ").split(' '))

#작은 수를 A, 큰 수를 B로 조정한다.
if A>B:
    c=A
    A=B
    B=c

#A~B까지의 합을 구한다.
Sum=0
for i in range(A,B+1):
    Sum+=i


#결과출력
print(f'{A}부터 {B}까지의 합은 {Sum}입니다.')

 

참고풀이 결과1]

 

 

참고풀이2] 가우스(gauss) 덧셈을 활용.

#임의의 자연수를 입력한다.
A,B=map(int, input("임의의 자연수 두 개를 입력하시오(예: 10 100) : ").split(' '))

#작은 수를 A, 큰 수를 B로 조정한다.
if A>B:
    A, B = B, A

#A~B까지의 합을 구한다.
Sum=B*(B+1)//2-(A-1)*((A-1)+1)//2


#결과출력
print(f'{A}부터 {B}까지의 합은 {Sum}입니다.')

 

참고풀이 결과2]

 

 

대한민국의 아름다운 영토, 독도의 겨울

 

반응형

댓글