티스토리 뷰

카테고리 없음

조건문과 반복문

김수한무거북이WA!두루미 2020. 2. 4. 19:13

I. 조건문

특정한 조건이 갖춰지면 수행되어야하는 기능이 있을때 조건문을 사용한다.

조건문은 if, else, else if, switch 이렇게 있다.

 

1. if 조건문 : 단 하나의 조건에 하나의 기능만 수행하면 될때 사용한다.

if (조건식) {
    조건식이 참인 경우에 수행되는 문장;
}

 

2. else : if 조건문, else if 뒤에 붙게되며 위의 조건식에 해당하는 경우가 없을때 작동하는 기능이 있을때 사용한다.

if (조건식) {
    조건식이 참일 경우에 수행되는 문장;
} else {
    조건식이 거짓일 경우에 수행되는 문장;
}

 

3. else if : if 조건문 뒤에 붙게되며 여러개의 조건에 따라 각각의 기능을 수행해야하는 경우에 사용한다.

if (조건식1) {
    조건식1이 참일 경우에 수행되는 문장;
} else if (조건식2) {
    조건식2가 참일 경우에 수행되는 문장;
} else if (조건식3) {
    조건식3이 참일 경우에 수행되는 문장;
} ... {
    ....
} else {
    위의 조건식 중에서 만족하는 것이 없는 경우에 수행되는 문장;
}

 

4. switch : if 조건문과 다르게 하나의 조건식에 대해서 여러개의 결과값이 나올 경우에 주로 사용한다.

switch (조건식) {
    case 값1 :
        (조건식의 결과가 값1과 같은 경우 수행될 문장들)
        break;
    case 값2:
        (조건식의 결과가 값2와 같은 경우 수행될 문장들)
        break;
    default :
        (조건식의 결과와 일치하는 case문이 없을 경우에 수행될 문장들)
}

 

5. 다중 조건문

위의 조건문에서 수행되는 문장 내부에도 조건문을 사용할 수 있으며 이를 다중 조건문이라 부를 수 있다.

if (조건식1) {
    if(조건식1.1) {
        ....
    }
}

 

 

 

II. 조건문 

같은 작업을 반복적으로 수행할 때 반복문을 사용한다.

반복문은 for, while, do while이 있다.

그리고 조건에 따라서 반복문을 중지시키거나 넘어서 다음 반복을 진행하는 break와 continue가 있다.

 

1. for : 반복문 자체에 초기화와 조건, 증감식이 들어가있는 것이 특징이다

for(초기화; 조건식; 증감식) {
    조건식이 참일 경우 수행될 문장;
}

 

2. while : for와 다른 점은 조건식과 수행해야할 중괄호 블럭만으로 구성되어 있고 반복문 외부에 초기화가 이루어져있다. 여기서 조건식이 참이면 반복문이 실행되는데 이후에 중지의 조건을 넣어서 반복문을 중지시킬 문장이 필요하다.

while(조건식) {
    조건식의 연산결과가 참인 경우에 수행될 문장;
}

 

3. do while : while을 변형한 것으로 구조는 while과 같지만 중괄호 블럭을 먼저 수행한 후 조건을 판단하는 것이 while과의 차이점이다.

do {
    조건식의 연산결과가 참인 경우에 수행될 문장;
} while (조건식);

 

4. break : 반복문 자체를 중단 시키고자할 때 사용한다.

 

아래는 5까지만 출력하게 만드는 반복문이다

반복문 내부에 조건식이 없다면 1부터 99까지 출력하게 되어있지만, 조건식을 넣음으로서 a가 5가 된다면 반복문을 중단하게 된다.

int a = 1;

while (a<100) {
    System.out.println(a);
    a+=1;
    if (a==5) {
        break;
    }
}

 

5. continue : 실행은 중단되나 반복문을 계속 돌리고자할 때 사용한다.

 

아래는 5의 배수만을 출력하게 만드는 반복문이다.

반복문 내부에 조건식이 없다면 위와 같이 1부터 99까지 출력하게 되어있지만, 조건식을 넣음으로서 a가 5의 배수인 경우에만 출력을 하게 만들었다.

int a = 1;

while (a<100) {
    System.out.println(a);
    a+=1;
    if (a%5!=0) {
        continue;
    }
}
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함