[Java] branching(가지치기)

Date:     Updated:

카테고리:

태그:

branching 이란?

java.png

브랜칭은 버전 관리 시스템에서 코드를 나누어 동시에 여러 작업을 수행하는 것을 의미합니다

break 문 사용에 대한 흐름을 이해하고 적용할 수 있다

  • break 문은 반복문 내에서 사용한다
  • 해당 반복문을 빠져 나올 때 사용하며, 반복문의 조건문 판단 결과와 상관없이 반복문을 빠져나올 때 사용한다
  • 일반적으로 if(조건식) {break;} 처럼 사용한다
  • 단, switch 문은 반복문이 아니지만 예외적으로 사용한다

break 문을 이용하여 무한루프를 활용한 1~100까지의 합계 구하기

package section03.branching;

public class A_break {
    public void testSimpleBreakStatement() {

        int sum = 0;
        int i = 1;
        while (true) {

            sum += i;
            if (i == 100) {
                break;
            }

            i++;
        }
        System.out.println("1부터 100까지의 합은 " + sum + "입니다");
    }
}

중첩 반복문 내 break문 사용에 대한 흐름을 이해하고 적용할 수 있다

  • break 문은 모든 반복문을 종료하는 것이 아닌 자신에게 가장 인접한 반복문의 실행을 멈춘다
  • 구구단 2~9단까지 출력
  • 단, 각 단의 수가 5보다 큰 경우 해당 반복문을 빠져나온다
public void testSimpleBreakStatement2() {
    
        for (int dan = 2; dan < 10; dan++) {

            for (int su = 1; su < 10; su++) {

                if (su > 5) {

                    break;
                }

                System.out.println(dan + " * " + su + " = " + (dan * su));
            }

        }
    }

continue 문 사용에 대한 흐름을 이해하고 적용할 수 있다

  • continue 문은 반복문 내에서 사용한다
  • 해당 반복문의 반복 회차를 중간에 멈추고 다시 증감식으로 넘어가게 해준다
  • 일반적으로 if(조건식){continue;}처럼 사용된다
  • 보통 반복문 내에서 특정 조건에 대한 예외를 처리하고자 할 때 자주 사용한다

1부터 100사이의 4의 배수이면서 5의 배수인 값을 출력

package section03.branching;

public class B_continue {

    public void testSimpleContinueStatement() {

        for (int dan = 2; dan < 10; dan++) {

            /* 설명. 여기까지 빠져나옴 */
            for (int su = 1; su < 10; su++) {
                if (su % 2 == 0) {

                    /*  su가 짝수인 경우 해당 회차 반복 내용을 건너 뛰고 증감식으로 이동 */
                    continue;
                }
                System.out.println(dan + " * " + su + " = " + dan * su);
            }
            System.out.println();
        }

    }

}

이번에도 Application 클래스를 만들어서 실행 해보자

package section03.branching;

public class Application {
    public static void main(String[] args) {

        A_break b = new A_break();
        //b.testSimpleBreakStatement();
        //b.testSimpleBreakStatement2();

        B_continue c = new B_continue();
        //c.testSimpleContinueStatement();

    }
}

b.testSimpleBreakStatement();

  • 출력값
1부터 100까지의 합은 5050입니다

b.testSimpleBreakStatement2();

2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
2 * 4 = 8
2 * 5 = 10
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
3 * 4 = 12
3 * 5 = 15
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
5 * 1 = 5
5 * 2 = 10
5 * 3 = 15
5 * 4 = 20
5 * 5 = 25
6 * 1 = 6
6 * 2 = 12
6 * 3 = 18
6 * 4 = 24
6 * 5 = 30
7 * 1 = 7
7 * 2 = 14
7 * 3 = 21
7 * 4 = 28
7 * 5 = 35
8 * 1 = 8
8 * 2 = 16
8 * 3 = 24
8 * 4 = 32
8 * 5 = 40
9 * 1 = 9
9 * 2 = 18
9 * 3 = 27
9 * 4 = 36
9 * 5 = 45

c.testSimpleContinueStatement();

  • 출력값
2 * 1 = 2
2 * 3 = 6
2 * 5 = 10
2 * 7 = 14
2 * 9 = 18

3 * 1 = 3
3 * 3 = 9
3 * 5 = 15
3 * 7 = 21
3 * 9 = 27

4 * 1 = 4
4 * 3 = 12
4 * 5 = 20
4 * 7 = 28
4 * 9 = 36

5 * 1 = 5
5 * 3 = 15
5 * 5 = 25
5 * 7 = 35
5 * 9 = 45

6 * 1 = 6
6 * 3 = 18
6 * 5 = 30
6 * 7 = 42
6 * 9 = 54

7 * 1 = 7
7 * 3 = 21
7 * 5 = 35
7 * 7 = 49
7 * 9 = 63

8 * 1 = 8
8 * 3 = 24
8 * 5 = 40
8 * 7 = 56
8 * 9 = 72

9 * 1 = 9
9 * 3 = 27
9 * 5 = 45
9 * 7 = 63
9 * 9 = 81

Java 카테고리 내 다른 글 보러가기

댓글 남기기