[1] 코드업 파이썬 기초 100제
100제 86번째 문제
[2] 문제
1, 2, 3 ... 을 순서대로 계속 더해 합을 만드는데,
그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자.
즉, 1부터 n까지 정수를 하나씩 더해 합을 만드는데,
어디까지 더해야 입력한 수보다 같거나 커지는지 알아보고자 하는 문제이다.
하지만, 이번에는 그 때 까지의 합을 출력해야 한다.
예를 들어, 57을 입력하면
1+2+3+...+8+9+10=55에서 그 다음 수인 11을 더해 66이 될 때,
그 값 66이 출력되어야 한다.
1. 예시
...
while True :
s += c
c += 1
if s>=n :
break
print(s)
2. 참고
조건문이나 반복문의 코드블록 안에서 break 가 실행되면,
반복실행을 중단(break)하고, 가장 가까운 반복 블록의 밖으로 빠져나간다.
3. 입력
언제까지 합을 계산할 지, 정수 1개를 입력받는다.
단, 입력되는 자연수는 100,000,000이하이다.
4. 출력
1, 2, 3, 4, 5 ... 순서대로 계속 더해가다가, 그 합이 입력된 정수보다 커지거나 같아지는 경우,
그때까지의 합을 출력한다.
5. 입력 예시
57
6. 출력 예시
66
https://codeup.kr/problem.php?id=6086
[3] 정답
1. 해설 미포함
n = int(input())
a = int(0)
s = int(0)
while True:
a += 1
s += a
if s >= n:
break
print(s)
2. 해설 포함
n = int(input())
# 값을 입력받아 정수로 형변환한 후 변수 n에 저장한다.
a = int(0)
# 값 0을 정수형으로 변수 a에 저장한다.
s = int(0)
# 값 0을 정수형으로 변수 s에 저장한다.
while True:
# 반복문 while 무한 반복한다.
a += 1
# 변수 a에 변수 a에 저장된 값에서 1를 더한 값을 저장한다.
s += a
# 변수 s에 변수 s에 저장된 값에서 변수 a에 저장된 값을 더한 값을 저장한다.
if s >= n:
# 조건문 if 만약 변수 s에 저장된 값이 n보다 크거나 같다면 밑에 코드를 실행한다.
break
# while문을 빠져나온다.
print(s)
# 변수 s에 저장된 값을 출력한다.
input 함수는 값을 입력받는 함수이다.
int 함수는 변수에 저장된 값을 int(정수형)으로 변환한 후 출력하는 함수이다.
while문은 반복문이다. 조건식이 True라면 계속 반복된다.
if 문은 조건문이다. 조건식이 True이면 if문 안의 코드가 실행된다.
break 문을 while문을 강제로 빠져나오는 명령문이다.
print 함수는 값을 출력하는 함수이다.
'프로그래밍 > 코드업 파이썬 기초 100제' 카테고리의 다른 글
코드업 파이썬 기초 100제 6088번(100제 88번째 문제) (0) | 2023.02.07 |
---|---|
코드업 파이썬 기초 100제 6087번(100제 87번째 문제) (0) | 2023.02.07 |
코드업 파이썬 기초 100제 6085번(100제 85번째 문제) (0) | 2023.02.06 |
코드업 파이썬 기초 100제 6084번(100제 84번째 문제) (0) | 2023.02.06 |
코드업 파이썬 기초 100제 6083번(100제 83번째 문제) (0) | 2023.02.06 |