1. 단순 반복문
1.1 차례로 출력
📌 [기본 개념] for loop
✔ 보통 i라는 변수를 이용하여 for loop를 진행하게 됩니다.
원하는 범위 [a, b)를 돌기 위해 range 함수를 사용합니다.
이때, a 부터 b-1까지 i라는 변수에 순서대로 값이 대입됩니다.
for i in range(a, b):
코드 작성
이 위치에 i값이 a부터 b - 1까지 1씩 증가하며 들어옴
✔ 다음과 같이 range(n)을 이용하여 0부터 n-1번까지 1씩 증가하는 코드를 작성할 수 있습니다.
n = int(input())
for i in range(n):
print(i)
✔ range(a, b + 1)로 설정하고, print() 함수를 end =' '으로 설정하면
다음과 같이, a부터 b까지의 수를 공백을 사이에 두고 출력할 수 있습니다.
a, b = 3, 6
for i in range(a, b + 1):
print(i, end=' ')
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 for 문과 range()를 사용하여 5부터 17까지의 수를 차례대로 i에 대입합니다.
이때, 17까지 출력해야하므로 range(5, 17 + 1)로 설정합니다.
📍 print(i, end =' ')를 통해 하나의 수를 출력할 때마다 뒤에 공백을 하나 출력합니다.
[코드]
for i in range(5, 18):
print(i, end=" ")
1.2 입력받는 수부터 100까지 출력
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 첫 번째 줄에 정수 n이 주어지므로 int(input())을 통해 n에 넣습니다.
📍 n부터 100까지의 숫자를 순서대로 출력해야하므로 range(n, 100+1)로 설정하고,
for 문을 사용하여 i에 순서대로 숫자를 대입합니다.
📍 공백을 사이에 두고 숫자를 출력해야하므로 print(i, end=' ')를 사용합니다.
[코드]
n = int(input())
for i in range(n, 100 + 1):
print(i, end=' ')
1.3 출력 결과 1
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 for i in range(4)이므로, 0부터 3까지의 숫자가 순서대로 i에 대입됩니다.
📍i의 값에 따라 변수들은 다음과 같이 변합니다.
i 초기 0 1 2 3
q 0 2 3 5 8
t 1 1 2 3 5
s 1 2 3 5 8
📍 for 문이 모두 실행된 이후에는 q를 출력하므로, 그 결과는 8입니다.
1.4 출력 결과 8
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 for i in range(1, a + 1)이므로 1부터 a까지의 숫자가 순서대로 i에 대입됩니다.
📍 % 연산자를 사용하여 a가 i로 나누어 떨어지면 b에 1을 더합니다.
📍 현재 a는 60이고, a의 약수로 나누어야 a가 나누어 떨어집니다.
a의 약수는 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60으로 모두 12개입니다.
따라서 b에는 1이 12번 더해집니다.
📍 for 문을 모두 실행한 후, b를 출력하면 12가 출력됩니다.
1.5 출력 결과 10
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 for i in range(1, N)이므로 1부터 N-1(=127)까지의 숫자가 순서대로 i에 대입됩니다.
📍 % 연산자를 사용하여 N이 i로 나누어 떨어지면, result에 해당 i를 더합니다.
📍 나누어 떨어지기 위해서는 i가 N의 약수이어야 하고, 범위에 따라 자신을 제외해야 합니다.
N = 128의 약수는 1, 2, 4, 8, 16, 32, 64 입니다.
📍 따라서 result의 값은 127입니다.
1.6 1부터 n까지 출력
📌 [문제] 링크
📌 [풀이 및 코드]
[풀이]
📍 첫 번째 줄에 정수 n이 주어지므로, int(input())을 통해 n에 넣습니다.
📍 for i in range(1, n+1)을 통해 1부터 n까지의 숫자를 순서대로 i에 대입합니다.
📍 print(i, end=' ')를 통해 숫자를 출력한 후 공백을 하나 출력합니다.
[코드]
n = int(input())
for i in range(1, n + 1):
print(i, end=' ')
'코딩테스트 대비' 카테고리의 다른 글
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(3) - for문 a→b 1씩 감소 (0) | 2023.10.21 |
---|---|
[코드트리 챌린지] [Novice Low] 5. 단순 반복문(2) - for문 a→b 2씩 증가 (0) | 2023.10.20 |
[코드트리 챌린지] [Novice Low] 4. 조건문(12) - 중첩 조건문 (0) | 2023.10.18 |
[코드트리 챌린지] [Novice Low] 4. 조건문(11) - and, or 혼합 (0) | 2023.10.17 |
[코드트리 챌린지] [Novice Low] 4. 조건문(10) - or 기호 (0) | 2023.10.16 |