Pages

Saturday, January 6, 2018

C/C++ 언어 프로그래밍-제어문2

C/C++ 제어문 2 (if, if else, 다중 if else )

if else, if else if : if 문의 종류로 보다 프로그래밍을 효율적으로 만들어 주는 제어문 입니다. 먼저 if else 문을 살펴보겠습니다.

if else 문은
if ('조건'){ '수행 문장 1' }
else{ '수행 문장 2'}

구조를 갖고 있습니다.

- if 다음 괄호 () 사이에 특정 조건을 작성합니다. 그리고 '조건' 만족하면 괄호 {} 사이에 있는 '수행 문장 1' 수행하고 '조건' 만족하지 않으면 '수행 문장 2' 수행합니다.

사용예시 :

예제코드

#include <iostream>
using namespace std;
int main() {

     int a, b;
          a = 1 ;
          b = 10 ;

     if(a > 1){
             cout<<" a > 1 is true !!! "<<endl ;
          } else {
        cout<<" a > 1 is false !!! "<<endl ;
          }

     if(b > 1){
             cout<<" b > 1 is true !!! "<<endl ;
          } else {
        cout<<" b > 1 is false !!! "<<endl ;
          }
          return 0;
}

실행결과

- 앞의 예제를 조금 수정해 보았습니다. if 대신 if else 문을 사용해 if 문의 조건이 거짓일 경우 수행하는 수행 문장 2 추가하였습니다.

- a 에는 1 대입되어 있기 때문에 첫번째 if 문의 경우 a 1 보다 크지 않기 때문에 결과는 거짓으로 수행문장 2 (" a > 1 is false !!! ") 수행해 출력합니다.

- b 에는 10 대입되어 있어 두번째 if 문의 조건을 만족하므로 수행문장 1 (" b > 1 is true !!! ") 수행해 출력합니다

if else 문의 확장판 ? 으로 다중 if else 문이 있습니다. 여러개의 조건들을 정해 특정 조건이 참일때 특정 문장을 수행하게 하는 제어문 입니다. 구조는 다음과 같습니다.  

if ('조건 1'){ '수행 문장 1' }
else if ('조건 2'){ '수행 문장 2' }
else if ('조건 3'){ '수행 문장 3' }
...
else {'수행 문장 0' }

- 첫번째 if 다음 괄호 () 사이에 있는 '조건 1' 만족하면 괄호 {} 사이에 있는 '수행 문장 1' 수행합니다. 이때 나머지 수행문은 수행하지 않습니다.

- 첫번째 '조건 1' 만족하지 않으면 다음 else if 문으로 넘어가고 다시 조건을 판단합니다. ('조건 2') '조건 2' 참이면 '수행 문장 2' 수행합니다. , 조건 1 거짓이고 조건 2 참이면 '수행 문장 2' 수행하고 나머지 수행문은 수행하지 않습니다.

- 이러한 방법으로 여러개의 else if 문을 추가할 있습니다. 마지막의 else 문은 모든 조건들이 만족하지 않을 수행하는 문으로 '수행 문장 0' 수행합니다.

사용예시 :

예제코드

#include <iostream>
using namespace std;

int main() {

     int a, b;
          a = 1 ;
          b = 10 ;

     if(a > 1){
             cout<<" a > 1 is true !!! "<<endl ;
          } else if(b > 1){
        cout<<" b > 1 is true !!! "<<endl ;
          } else {
             cout<<" Both a > 1 and b > 1 are false !!! "<<endl ;
          }

          return 0;
}

실행결과

- 첫번째 if 문의 조건식은 거짓이므로 " a > 1 is true !!! " 문장의 출력은 수행되지 않고 다음 if else 문으로 넘어갑니다. if else 문의 조건식 b > 1 참이므로 <<" b > 1 is true !!! " 문장을 출력하게 됩니다. 물론 마지막 수행문장은 수행되지 않습니다.

예제코드에서 b 값을 1 바꾸면 'a > 1' 'b > 1' 조건식이 모두 거짓이 되므로 마지막 문장이 출력되는 것을 확인할 있습니다.

실행결과

No comments:

Post a Comment