8. if 안의 for
8.1 숫자의 증감
📌 [기본 개념] if 문 안의 for 문
✔ 숫자 n이 짝수인 경우에만 a부터 b까지의 숫자를 출력하는 프로그램
if 문을 사용하여 n이 짝수인지 판별하고,
n이 짝수인 경우 if 문 내부에 for 문을 사용하여 a부터 b까지 1씩 증가하여 출력합니다.
if n % 2 == 0:
for i in range(a, b + 1):
print(i)
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 첫 번째 줄에 문자 c와 숫자 n이 공백을 사이에 두고 주어지므로
input().split()를 통해 공백을 기준으로 나누고 이들을 각각 c, n에 넣습니다.
n은 숫자이므로 int()를 사용하여 정수형으로 변경합니다.
📍 if else 문을 사용하여 c가 'A'인지 'D'인지 판별합니다.
c가 'A'인 경우, if 문 내부에 for 문을 사용하여 1부터 n까지 1씩 증가하며 출력합니다.
c가 'D'인 경우, else 문 내부에 for 문을 사용하여 n부터 1까지 1씩 감소시키며 출력합니다.
[코드]
c, n = input().split()
n = int(n)
if c == 'A':
for i in range(1, n+1):
print(i, end=' ')
else:
for i in range(n, 0, -1):
print(i, end=' ')
8.2 높은 수에서 낮은 수까지
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 첫 번째 줄에 정수 a, b가 공백을 사이에 두고 주어지므로
input().split()를 통해 공백을 기준으로 나누고 이들을 원소로 갖는 리스트를 arr에 넣습니다.
arr의 0, 1번째 원소를 각각 int()로 감싸서 a, b에 넣습니다.
📍 if else 문을 사용하여 a와 b 중 어떤 것이 큰지 판별합니다.
a가 b보다 큰 경우, for 문을 사용하여 a부터 b까지 1씩 감소시키며 출력합니다.
b가 a보다 크거나 같 경우, for 문을 사용하여 b부터 a까지 1씩 감소시키며 출력합니다.
[코드]
arr = input().split()
a, b = int(arr[0]), int(arr[1])
if a <= b:
for i in range(b, a-1, -1):
print(i, end=' ')
else:
for i in range(a, b-1, -1):
print(i, end=' ')
8.3 자연수면 출력
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 첫 번째 줄에 정수 a, b가 공백을 두고 주어지므로
input().split()를 통해 공백을 기준으로 나누고 이들을 원소로 갖는 리스트를 arr에 넣습니다.
📍 if else 문을 사용하여 a가 자연수인지 아닌지를 판별합니다.
a가 자연수인 경우, for 문을 사용하여 b번 동안 a를 출력합니다.
a가 0 이하인 경우, 0을 출력합니다.
[코드]
arr = input().split()
a, b = int(arr[0]), int(arr[1])
if a > 0:
for _ in range(b):
print(a, end='')
else:
print(0)
'코딩테스트 대비' 카테고리의 다른 글
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(10) - cnt 활용하기 (0) | 2023.10.28 |
---|---|
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(9) - for 안의 if (0) | 2023.10.27 |
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(7) - n번 반복하기 (0) | 2023.10.25 |
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(6) - while문 b→a 1씩 감소 (0) | 2023.10.24 |
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(5) - while문 a→b 2씩 증가 (0) | 2023.10.23 |