ISSAC.Min

[C++ Basic] 반복문(while) 본문

Programming Language/C++ Basic

[C++ Basic] 반복문(while)

ISSAC.M 2019. 4. 17. 13:54
반응형

 1. 반복문(while)


지금 포스팅 할 반복문 while문은 C++에서 지원하는 반복문(While, Do-while, for... ) 중 하나이며 반복의 조건이 if 문과 매우 유사하기 때문에 if문 다음으로 포스팅 하였다. 얼마나 비슷한가 하면 아래의 예시를 보자.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
 
using namespace std;
 
int main(){
  int num1 = 1;
 
  while(num1 <= 100){
    cout << num1 << endl;
    num1 *= 2;
    }
 
  return 0;
}
cs


위의 예시는 100 이하의 2의 거듭제곱을 출력하는 프로그램이다. [[C++ Basic] 조건문(if-else)]에서 본 if문의 조건 구성방식이랑 문법이 똑같이 사용하면 된다. if문과 다른 점이 있다면 이러한 조건문이 계속 반복된다는 점이다. 위의 예시로 설명을 해보자면


num1 = 1이고 while문을 들어가면서 num1 <= 100에 만족하기 때문에 num1 *= 2를 통하여 num1 = 2가 되고 다시 while문에 들어가게 된다. 이는 num1 <= 100에 만족하기 때문에 num1 *= 2에 의해서 num1 = 4가 된다. 이런게 계속 반복되다가 num = 128이 되었을때 이는 num1 <= 100에 적합하지 않기 때문에 while문을 진행하지 않고 while문을 빠져나간다.


 2. 추가적 while 특징


1
2
3
4
5
6
7
8
9
#include <iostream>
 
using namespace std;
 
int main(){
  while(true){
    cout << "wow" << endl;
  }
}
cs


위의 예시를 visual studio에서 컴파일을 하면 우리는 미친듯이 wow가 써지는 터미널의 상태를 볼 수 있을 것이다. 이를 우리는 무한루프라고 하는데 항상 참을 유지하지 않기 때문에 while문은 계속 실행되고 while문은 빠져나가지 않는다. 


물론 while문 안에서 또 다른 장치들을 통하여 break문 등을 통하여 빠져나가는게 가능하다.


<위의 코드는 웹 컴파일러에서 돌아가지 않으니 사용하는 visual studio 등을 사용해서 해보시길 권유드립니다.>


 3. 실습



반응형