CodeGym /행동 /C# SELF /for 반복문: 소개와 사용 팁

for 반복문: 소개와 사용 팁

C# SELF
레벨 4 , 레슨 2
사용 가능

1. 들어가기

상상해봐, 네가 해야 할 일이 있어: 화면에 "안녕!"을 열 번 출력하는 거야. 물론 Console.WriteLine("안녕!");을 열 줄 쓸 수도 있겠지. 근데 이제 while 반복문을 아니까, 이건 식은 죽 먹기야.

근데 또 다른 반복문이 있어 — for! 얘는 필요한 만큼 동작을 반복해주고, 카운트도 직접 해줘!

이게 대표적인 예시야:

for (int i = 0; i < 10; i++)
{
    Console.WriteLine("안녕!");
}
고전적인 for 반복문 — "안녕!"을 10번 출력

이 코드가 뭐 하는 거냐고? 화면에 "안녕!"을 딱 10번 출력해. 복붙도 필요 없고 손목도 안 아파!

2. for 반복문의 문법

for 반복문은 세 가지 주요 부분으로 구성돼. 이건 for 키워드 뒤에 괄호 안에 써줘:

for (초기화; 조건; 변경)
{
    // 반복문 본문
}
for 반복문의 기본 문법

각 요소를 좀 더 자세히 볼까?

  • 초기화 — 보통 반복 횟수를 세는 변수(카운터)를 만드는 거야 (int i = 0).
  • 조건 — 반복할 때마다 체크하는 조건. 참이면 반복문 본문이 실행되고, 거짓이면 반복문이 끝나. 예를 들어 i < 10.
  • 변경각 반복 끝나고 실행되는 연산자. 보통 카운터를 증가시키거나 감소시켜 (i++).

이렇게 도식으로도 볼 수 있어:

3. forwhile 비교

아마 이렇게 말하면 더 이해가 될 거야: for는 사실 while 반복문을 다른 방식으로 쓴 것뿐이야.

예전에 while 반복문을 썼었지:

int i = 0;					// 반복문용 변수 초기화
while(i < 10)				// 반복 계속할 조건 체크
{
    Console.WriteLine(i); 	// 실제 동작 (본문)
    i++;					// 카운터 증가
}

이걸 for 반복문으로 바꿀 수 있어. 반복문 로직을 한 줄에 다 넣는 거지:

for (int i = 0; i < 10; i++)  // 초기화; 조건 체크; 카운터 증가
{
    Console.WriteLine(i);		// 실제 동작 (본문)
}

두 반복문의 동작 순서:

  1. int i = 0; 초기화는 반복문 시작 전에 한 번만 실행돼.
  2. 그 다음 i <= 10 조건을 체크해.
  3. 그 다음 반복문 본문 Console.WriteLine(i);이 실행돼.
  4. 그리고 카운터 i++가 증가해.
  5. 그 다음 2번으로 돌아가.

4. for 반복문 사용 예시

가장 간단한 예시

1부터 5까지 숫자를 출력해보자:

for (int i = 1; i <= 5; i++)
{
    Console.WriteLine(i);
}

출력:

1
2
3
4
5

참고: 만약 i < 5로 썼으면 마지막 출력은 4였을 거야.

카운트다운(역방향 반복)

우주비행사 느낌 내고 싶어? 카운트다운 해보자!

for (int i = 5; i > 0; i--)
{
    Console.WriteLine(i);
}
Console.WriteLine("출발!");

출력:

5
4
3
2
1
출발!

반복문 스텝이 1이 아닐 때

카운터를 1씩만이 아니라, 원하는 만큼 바꿀 수도 있어:

for (int i = 0; i <= 10; i += 2)
{
    Console.WriteLine(i);
}
// 출력: 0 2 4 6 8 10

5. for 반복문의 다양한 형태

반복문에서 여러 변수 쓰기

가끔 두 개의 변수를 동시에 추적하면 편할 때가 있어. 예를 들어, 왼쪽에서 오른쪽, 오른쪽에서 왼쪽으로 숫자를 출력해보자:

for (int left = 1, right = 10; left <= 10; left++, right--)
{
    Console.WriteLine($"{left}  {right}");
}

출력:

1  10
2  9
3  8
...
10  1

무한 for 반복문

진짜 극한 상황(예를 들어 네 프로젝트가 IT의 영원한 엔진이라면)에는 "영원한" for 반복문도 만들 수 있어:

for (;;) // 초기화도, 조건도, 변경도 없음
{
    Console.WriteLine("일하고, 일하고, 또 일해라!");
}
무한 for 반복문

주의: 이런 반복문은 break, return 또는 throw가 본문에 있어야만 끝나. 이유 없이 쓰면 고대 악마 "프로세스 응답 없음"을 깨울 수도 있으니 조심!

코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION