금융 경제 보험 정보
C++ 기초공부 fOR 와 while 본문
for 문은 어떤 명령을 반복적으로 수행하는 함수이다. 가장 기본적인 구조를 먼저보자
#include <stdio.h>
int main (){
for (int i = 0; i <9; ++i)
{ printf("result\n"); }
return 0;
}
이렇게 간단하게 기본 for 문 반복문을 만들었다.
for 안에 들어가는 지역변수는 ( 변수의 초기화; 변수의 조건 ; 조건 변경 ) 순서로 되어 있다. 하나 씩 살펴보면
변수의 초기화 : int i = 0; -> 먼저 정수 형의 데이터 타입을 가진 변수 명 i에 0이라는 값을 넣어 초기화 해준다.
변수의 조건 : i <9; 그 다음으로 변수의 조건 문으로 진입하게 되는데 변수가 9보다 작기 때문에 이건 True가 되고 아래 조건이 된다. 여기서 실행해야 하는 조건은
{ printf("result\n); } result를 프린트 하는 것이다.
처음 조건이 실행되면 result 한번 실행하게 된다.
그런다음 다시 조건을 변경하는 곳으로 올라간다 .
조건 변경 : ++i 여기서 조건 변경은 기존의 값에 1을 더하는 것이다. 그럼 값이 1이 되고 다시 새로운 턴을 돌게 된다.
즉 변수의 초기화 -> 변수의 조건 -> TRUE -> 아래 명령 실행 -> 조건 변경 -> 변수의 조건 확인 -> True -> 아래 명령 실행
이렇게 조건이 FALSE가 될 때 까지 조건을 무한 대로 도는 것이다.
최종 실행 결과는
여기에 continue 와 break 를 활용할 수 있다.
continue는 조건에 TRUE에 가 되어 명령문을 실행하다가 continue를 만나면 더이상 실행하지 않고 다시 바로 조건의 변경으로 되돌아가는 것이다.
#include <stdio.h>
int main(){
for (int i =0; i<9; ++i) {
if (i%2 ==1)
{ continue;}
printf("result\n");}
return 0;
}
이렇게 코드를 짜게 된다면 변수 초기화 -> 변수 조건 -> True -> 실행을 돌입하였을 때 먼저 if 구문을 먼저 만나게 된다. IF 에서 변수가 홀수 이라면 (i%2 ==1;) continue를 실행하게 되고 다음 실행으로 넘어가지 않고 바로 조건 변경으로 올라가 버린다.
그래서 홀수 였던 변수 차례의 경우에는 result를 출력하지 않고 결과적으로 짝수였던 변수만을 출력하여 5번의 result만 출력하는 것이다.
break 의 경우에는 해당 실행 과정 중에 break 를 만나게 되면 더이상 반복문을 돌지 않고 해당 실행을 바로 종료해 버리는 것이다.
#include <stdio.h>
int main() {
for (int i = 0; i < 9; ++i) {
if (i % 2 == 1)
{
break;
}
printf("result\n");
}
return 0;
}
그래서 위 코드로 실행하게 되면 변수는 0부터 시작한다. 변수 0은 홀수가 아니기 때문에 IF 조건문을 지나서 result를 한번 출력한다. 다음 반복 턴에서 변수 0은 1이 되고 조건 확인에서 9보다 작기때문에 두번째 반복문이 실행이 되는데 if를 만나서 홀수 이기 때문에 break 가 실행이 되고 for문을 빠져나오면서 실행이 종료 된다. 그래서 결과를 보면 'result'는 한번만 실행된 것을 볼 수 있다.
다음으로 while 문은 for 문과 비슷한데 변수 조건 확인만 진행하는 것이다. 형태를 조금 변경해서 for문과 똑같은 결과를 받게 만들 수 있다.
#include <stdio.h>
int i = 0;
int main() {
while (i < 9)
{
printf("result\n");
++i;
}
return 0;
}
이 while 구문을 보는 것 처럼 변수의 초기화는 없이 바로 변수의 조건 체크를 해주고 실행을 하고 ++1 도 실행의 한 부분으로 진행이 된다.