티스토리 뷰

반응형

1. if 제어문

1-1. if

- 구조

if ( 조건문 ) {

}

 

- if문은 조건문이 참이면 { } 안의 명령을 수행하고, 아니면 넘어간다.

- 활용예시

int num = 10;

if ( num > 5 ) {

cout << num << "은 5보다 크다. " << endl;

}

- num 변수를 10으로 초기화 하였다.

- if문을 만나면 조건문을 확인하고, 조건문이 참이면 { } 를 수행한다. num 이 10 이므로 10 > 5는 참이므로 { } 를 실행하여 "10은 5보다 크다." 가 출력된다.

1-2. if ~ else

- 구조

if ( 조건문 ) {

} else {

}

- if else문은 if문과 같이 조건이 참이면 { }를 실행한다. if는 조건이 거짓이면 그냥 넘어가지만 if else문은 조건이 거짓이면 else 뒤의 { } 를 실행한다.

- 예시

int num = 10

if (num < 5) {

cout << num << "은 5보다 작다." << endl;

} else {

cout << num << "은 5보다 크다." << endl;

}

- num 변수를 10으로 초기화 하였다.

- if문을 만나면 조건을 확인하고 10 < 5는 참이 아니므로 if 문의 { } 는 넘어가고, else 문의 { } 를 실행하여 "10은 5보다 크다." 가 출력된다.

 

1-3. else if

- 구조

if ( 조건문 ) {

} else if ( 조건문 ) {

}

- 예시

int num = 5;

if (num > 10) {

 cout << num << "는 10보다 큽니다." << endl;

} else if (num > 6) {

 cout << num << "는 10보다작고 6보다 큽니다." << endl;

} else if (num > 3) {

 cout << num << "는 6보다 작고 3보다 큽니다." << endl;

}

- 변수 num 을 5로 초기화 하였다.

- if문을 만나면 조건을 확인한다. 5 > 10 은 거짓이므로 if 문의 { } 는 넘어가고 else문으로 넘어간다. else문을 바로 실행하지 않고 else if문의 조건을 확인한다. 5 > 6은 거짓이므로 두번째 { } 도 실행하지 않고 다음 else문으로 넘어간다. else문에 if가 있으므로 조건을 확인하고, 5 > 3은 참이므로 "5는 6보다 작고 3보다 큽니다."가 출력된다.

2. switch 제어문

1-1. switch ~ case

- 구조

switch ( 변수명 ) {

case 값:

break;

case 값:

break;

default :

break;

}

 

- 예시

while (1) { 

int num;

cin >> num;

switch (num) {

case 1:

cout << num << "은 1이다." << endl;

break;

case 2:

cout << num << "은 2이다." << endl;

break;

case 3:

cout << num << "은 3이다." << endl;

break;

default:

cout << num << "은 1,2,3 중 하나가 아니다.;

break;

}

- cin >> num 은 입력을 받은 값을 num에 대입하는 것이다.

- switch문이 시작되면 변수이름 num 의 값을 찾는다 . 만약 2를 입력했으면 case 2:의 문장이 실행된다. "2는 2이다." 라는 문장이 출력되고, break;를 만나 switch문에서 빠져나오게 된다.

- 만약 break; 가 없다면 다음문장인 case 3:의 "2은 3이다."가 출력되고, break;를 만나 switch 문을 빠져나오게 될 것이다.

3. 제어문 활용하기

3-1. up dwon 게임 만들기

- rand()를 사용하기 위해 #include <time.h>를 맨위에 추가해준다.

srand(time(NULL));

 

int randNum = rand() % 101;

int inputNum;

 

cout << "시작!" << endl;

for (int i=0; i< 5; i++) {

cin >> inputNum;

if(randNum == inputNum) {

cout << "정답" << endl;

} else if (randNum > inputNum) {

cout << "up" << endl;

} else if (randNum < inputNum) {

cout << "down" << endl;

}

}

- 5번 입력안에 0~100까지의 랜덤한 숫자를 맞추는 게임이다.

- 5번의 입력을 받아야하므로 5번 반복한다.

- for문이 시작되면 먼저 입력을 받아 inputNum에 입력값을 저장하고, if문에서 비교를 시작한다.

- 랜덤수가 입력한수보다 크면 up을 출력하고 반복한다. 

- 랜덤수가 입력수보다 작으면 down을 출력하고 반복한다.

- 랜덤수와 입력한수가 같으면 게임을 종료한다.

반응형

'C++' 카테고리의 다른 글

20160503_야구게임만들기  (0) 2016.05.04
20160429_배열원소섞기(shuffle)  (0) 2016.04.30
20160427_반복문 활용, 배열  (0) 2016.04.28
20160426_반복문  (0) 2016.04.26
20160425_연산자  (0) 2016.04.25
댓글