안녕하세요 넬 다이입니다.
오늘은 반복문 차례가 돌아왔어요!.
오늘도 힘드시겠지만 어려운 파트는 아니니깐 다들 힘내세요!!!
반복문
여러 번 출력을 해야 할 때,
반복문을 사용해서 간단한 코드 몇 줄로 원하는 부분을 반복적으로 출력이 가능하기 때문이다.
while 문
while(내부의 조건이 true 가 된다면)
계속해서 루프를 돌게 된다.
while(1); 이런 식으로 false가 아닌 값은 모두 true이다.
0은 false이고 0이 아닌값은 전부 true이다.
int iAA = 0;
while(true)
{
//while 중괄호 영역을 탈출하기 위해서
//break 사용이 가능하다. break 가 있다며은 반복문 밖으로 나간다.
if(iAA > 10)
break;
cout << iAA << endl;
++iAA;
}
이렇게 되면은 iAA의 값이 0부터 9까지 출력이 되는 구문이 완성된다.
iAA의 값이 10이 된다면은 if문을 통해서 break로 반복문을 빠져나오게 될 것이다.
결국 while 문 내부에 우리가 배웠던 연산자를 통해 반복의 횟수를 결정할 수가 있다.
주어진 조건이 참일 때만 반복을 수행하는 것.
do ~ while 문
while 문과 비슷한 문법이다.
while 문은 조건이 만족되지 않으면 아예 실행이 되지 않지만 do ~ while 문은 무조건 한 번은 실행한 다음
이후에 조건을 판별해 반복 여부가 결정이 된다.
int iAA = 0;
do
{
//실행할 문장이 이 안에 들어가는것.
cout << iAA << endl;
++iAA;
}
while (iAA < 5);
위에 코드처럼 while문이 뒤에 있어서 do에 해당하는 구간을 처음 한번 실행한 후 while문의 조건문을 검사한다.
그렇기 때문에 iAA가 0~4까지 출력 후 while문의 조건에 걸려서 밖으로 빠져나오게 된다.
continue 문
반복문 안에는 continue라는 구문이 있는데 이는 이 구문을 만나면은 반복문의 처음으로 다시 돌아가게 된다.
int iAA = 0;
while(iAA < 10)
{
cout << iAA << endl;
//continue 를 만나면 반복문의 처음으로 다시 돌아가게 된다.
continue;
++iAA;
}
위에 구문에서는 iAA의 값이 0으로 계속 출력될 것이다.
continue문을 만나서 while문의 조건 검색하는 곳으로 가기 때문에
++iAA를 할 수가 없으므로 무한루프에 빠지게 된다.
for문
for 문 또한 반복문의 일종으로 앞으로 코딩을 하면서 지겹도록 보게 될 반복문이다.
같은 내용을 반복을 하더라도 반복해야 할 횟수가 정해져 있는 경우가 있고 없는 경우가 있다.
예를 들어 특정 키가 입력이 되었을 때 반복을 멈춘다는 코드가 있을 수도 있다.
이럴 때는 while 문을 많이 사용하고 반복할 횟수가 정해져 있는 상황이라면 주로 for 문을 사용하게 된다.
//내부에서 선언과 동시에 초기화가 이루어지는 형태.
for(int i = 0; i < 10; ++i)
{
cout << i << endl;
}
반복문의 예시이다.
위에 반복문에서는 i를 0~9까지 출력해주는 반복문이다.
순서로 보자면은
for문이 실행되면
1 = int i = 0;이라는 초기화 구문에 들어가게 된다.
2 = i < 10;이라는 조건문이 true인지 검사한다 true면은 중괄호 문장을 실행하고 false라면 빠져나간다.
3 = cout << i << endl;이라는 구문을 실행한다.
4 = 모든 구문이 끝 낫으므로 ++i라는 연산을 진행한다.
그 후 2~4를 반복한다. 2번이 false가 나올 때까지.
//외부에서 선언과 동시에 초기화가 이루어진 형태..
int i = 0;
for(i; i < 10; ++i)
{
cout << i << endl;
}
//c++ 에서는 for문 내부에서 증감 변수를 선언할 수 있게 된것임.
//무한루프가 도는 형태...
for(;;);
//내부에서 초기화만 이루어지는 형태..
int i;
for(i = 0; i < 10; ++i)
{
cout << i << endl;
}
//초기화식이 생략된 형태..
int i = 0;
for(; i < 10; ++i)
{
cout << i << endl;
}
//초기화식과 증감식이 따로 떨어진 형태..
int i = 0;
for(; i < 10 ;)
{
cout << i << endl;
++i;
}
다양한 형태로 for문을 사용할 수 있으며 다양한 예시를 한번 보여드리게 되었는데요
프로그래밍에서 반복문은 매우 중요한 문법 중에 하나예요 다들 익숙해지기 위해서 많은 연습과 공부가 필요합니다.
그렇기 때문에 오늘도 숙제 나갑니다!
금일 숙제
for문 , while문을 사용하여 구구단 2~9단 출력!!!
앞서 배운 내용대로 for문과 while문을 이용해서 구구단을 출력해보세요
댓글 남겨드리면 피드백 꼭 드립니다. ㅎ 약속!
[개발/C&C++] - (C/C++ 속성 정리) 5일 차 : 난수
[개발/C&C++] - (C/C++ 속성 정리) 4일 차 : 분기문 (숙제 있어요)
[개발/C&C++] - (C/C++ 속성 정리) 3일 차 : 연산자
'개발 > C&C++' 카테고리의 다른 글
(C/C++ 속성 정리) 10일 차 : 포인터 심화 및 2차원 배열 (0) | 2020.06.29 |
---|---|
(C/C++ 속성 정리) 9일 차 : 포인터와 배열 (0) | 2020.06.28 |
(C/C++ 속성 정리) 8일 차 : 포인터 (0) | 2020.06.27 |
(C/C++ 속성 정리) 7일 차 : 바이트의 저장순서 및 별찍기 (0) | 2020.06.25 |
(C/C++ 속성 정리) 5일 차 : 난수 (0) | 2020.06.24 |
(C/C++ 속성 정리) 4일 차 : 분기문 (숙제 있어요) (0) | 2020.06.22 |
(C/C++ 속성 정리) 3일 차 : 연산자 (0) | 2020.06.21 |
(C/C++ 속성 정리) 2일 차 : 자료형 타입과 표현 범위 및 변수 선언 (0) | 2020.06.20 |