본문 바로가기
알고리즘/Python

6086 : 거기까지! 이제 그만~(Python 기초 100제)

by yhyuk 2021. 3. 2.
728x90
반응형

< 문제 >  
1, 2, 3 ... 을 순서대로 계속 더해 합을 만드는데,
그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자.

즉, 1부터 n까지 정수를 하나씩 더해 합을 만드는데,
어디까지 더해야 입력한 수보다 같거나 커지는지 알아보고자 하는 문제이다.

하지만, 이번에는 그 때 까지의 합을 출력해야 한다.

예를 들어, 57을 입력하면
1+2+3+...+8+9+10=55에서 그 다음 수인 11을 더해 66이 될 때,
그 값 66이 출력되어야 한다.

ex)

while True :
  s += c
  c += 1
  if s>=n :
    break

print(s)

< 참고 >
조건문이나 반복문의 코드블록 안에서 break 가 실행되면,
반복실행을 중단(break)하고, 가장 가까운 반복 블록의 밖으로 빠져나간다.

 

< 입력 >

언제까지 합을 계산할 지, 정수 1개를 입력받는다.
단, 입력되는 자연수는 100,000,000이하이다.

< 출력 >

1, 2, 3, 4, 5 ... 순서대로 계속 더해가다가, 그 합이 입력된 정수보다 커지거나 같아지는 경우,
그때까지의 합을 출력한다.

< 입력 예시 >

57

< 출력 예시 >

66

 

<풀이>

= int(input())

= 0
b = 0

while True:

    a+=b

    b+=1

    if a>=n:

        break

print(a)

 

< 출처 >

codeup.kr/problem.php?id=6086

 

[기초-종합] 거기까지! 이제 그만~(설명)(py)

python언어기초100제v1.0 : @컴퓨터과학사랑, 전국 정보(컴퓨터)교사 커뮤니티/연구회 - 학교 정보(컴퓨터)선생님들과 함께 수업/방과후학습/동아리활동 등을 통해 재미있게 배워보세요. - 모든 내용

codeup.kr

 

728x90
반응형

댓글