본문 바로가기

TEAM STUDY/PYTHON

반복 과정에서 조건 판단하기1

728x90
반응형

반복 과정에서 조건 판단하기1

print('a부터 b까지 정수의 합을 구합니다');

a = int(input('정수 a를 입력하세요 : '));
b = int(input('정수 a를 입력하세요 : '));

if a > b :
	a, b = b, a

sum = 0

for i in range( a, b+1 ) :
	if i < b :
    	print(f'{i} + ', end='')
    else :
    	print(f'{i} =', end='' )
    sum += i
    
print(sum)

더하는 수가 n개이면 + 기호는 n-1개 출력해야 합니다.

 

예를 들어, a가 1이고 b가 10,000 이라고 가정해 봅시다.

그러면 for문에서 10,000 반복하는 동안 1~9,999 번은 i<b 가 참이므로 13행이 9,999번 실행되고, 마지막 10,000번은 거짓이므로 15행은 단 1번만 실행됩니다.

 

잘 생각해보면 if문은 마지막에 단1번 실행되는 15행을 위한 것입니다.

즉 15행을 위해 13행이 9,999번 실행되는 셈입니다.

 

이럴 때는 for문 안에 있는 if문을 제외하여 별도로 두는 것이 좋습니다.

 

print('a부터 b까지 정수의 합을 구합니다');

a = int(input('정수 a를 입력하세요 : '));
b = int(input('정수 a를 입력하세요 : '));

if a > b :
	a, b = b, a

sum = 0

for i in range( a, b ) :
	print(f'{i} + ', end='')
    sum += i

print(f'{b} =', end='' )
sum += b
print(sum)
728x90
반응형