[ 개요 ]
컴퓨터는 수많은 일을 자동화하여 인류에게 편리한 삶을 제공하였다.
이것을 가능하게 만든 건 컴퓨터의 조건문과 반복문이 큰 역할을 하였다고 필자는 생각한다.
입력이 들어오면 조건에 맞는 동작을 실행하며,
그 일을 반복하는 것이 컴퓨터의 큰 능력이라고 생각한다.
그렇기에 프로그래머는 컴퓨터의 조건문과 반복문을 잘 활용하여 문제를 해결해야 한다.
이전에 배운 조건문은 조건식이 만족하면 해당 코드를 한번 실행하였다.
반복문도 조건식을 갖는데 조건식이 만족하다면 여러 번 실행할 수 있다.
이번 파트에서는 반복문인 while, do-while, for, foreach에 대해 알아볼 것이다.
[ 개념 ]
while(조건식){
//코드
}
while문의 조건식이 참이라면 코드 블럭 안에 있는 코드를 반복해서 실행한다.
static void Main(string[] args)
{
int num = 0;
while(num < 10)
{
Console.WriteLine(num);
num++;
}
}
위의 코드는 num이 10미만이라면 코드 블록을 실행한다.
코드 블록 안에서 num의 값을 콘솔에 출력하고 증감 연산자를 통해 num을 1씩 올려준다.
그렇게 되면 1이 더해진 num을 다시 10과 비교한다.
이러한 동작이 반복되도록 하는 것이 반복문이다.
반복문을 중첩해서 사용할 수 있다.
static void Main(string[] args)
{
int a = 2; //2단부터 시작
int b = 1;
while (a < 10)
{
while (b < 10)
{
Console.WriteLine("{0} x {1}: {2}", a, b, a * b);
b++;
}
b = 1; //다시 1로 초기화
a++;
}
}
첫 번째 while문에서 2~9까지 반복을 한다.
첫 번째 while문 한번마다 두 번째 while문이 1~9까지 반복한다.
즉, 첫 번째 while문 a=2, 두 번째 while문 b=1~9까지 반복
즉, 첫 번째 while문 a=3, 두 번째 while문 b=1~9까지 반복
....
즉, 첫 번째 while 문 a=9, 두 번째 while 문 b=1~9까지 반복
이렇게 반복된다.
반복문안에 반복문을 중첩해서 사용하면 어마어마하게 동작하므로 주의해서 사용해야 한다.
또 주의할 점은 반복문이 무한 루프가 돌지 않게 해야 한다.
무한 루프는 반복 문의 조건이 계속 참이어서 해당 코드가 무한히 반복되는 것을 말한다.
static void Main(string[] args)
{
while(true)
{
}
}
위의 식은 조건식을 참으로만 두고 실행하였다.
그러면 프로그램이 무한히 돌아서 다음 동작이 실행 안되거나 에러를 띄우며 멈춰버린다.
그렇기에 반복문이 탈출할 수 있도록 코딩을 해야 하는 거 잊지 말자!
'C#문법' 카테고리의 다른 글
[C#문법] Part8-3 반복문: for문 (1) | 2023.02.03 |
---|---|
[C#문법] Part8-2 반복문: do-while문 (0) | 2023.02.03 |
[C#문법] Part7-2 조건문: switch 조건문 (1) | 2023.01.31 |
[C#문법] Part7-1 조건문: if 조건문 (3) | 2023.01.31 |
[C#문법] Part6 배열 (0) | 2023.01.30 |