티스토리 뷰

목차



    반응형
    조건문
    반복문
    중첩된 반복문
    continue 문
    break 문

    조건문

    주어진 조건에 따라 수행문이 실행되도록 하는 것

     

    if 문

    if(age >= 8) { // 조건식 
    	System.out.println("학교에 다닙니다."); // 수행문
    }

    if - else 문

    if(age >= 8) { // 조건식 
    	System.out.println("학교에 다닙니다."); // 수행문1
    }
    else {
    	System.out.println("학교에 다니지 않습니다."); // 수행문2
    }

    else if 문

    하나의 경우에 조건이 여러 개에 해당하는 경우

            int age = 9;
    
            int charge;
            
            if(age < 8){
                charge = 1000; 
                System.out.println("취학 전 아동입니다.");
            }
            else if(age < 14){
                charge = 2000;
                System.out.println("초등학생 입니다.");
            }
            else if(age < 20){
                charge = 2500;
                System.out.println("중, 고등학생 입니다.");
            }
            else{
                charge = 3000;
                System.out.println("일반인 입니다.");
            } 
            
            System.out.println("입장료는 " + charge + "원입니다.");
        }
    }

    조건문과 조건 연산자

    간단한 if-else 조건문은 조건 연산자로 구현할 수 있음

    if(a > b){ 
    	max = a;
    }
    else{
    	max = b;
    }
    // 조건문
    max = (a > b) ? a : b; // 조건 연산자

    switch-case 문

    조건식의 결과가 정수 또는 문자열의 값이고 그 값에 따라 수행문이 결정될 때 if-else 문을 대신하여 switch-case문을 사용할 수 있습니다.

            int ranking = 1;
            
            char medalColor;
            
            switch(ranking){
                case 1: medalColor = 'G';
                    break;
                case 2: medalColor = 'S';
                    break;
                case 3: medalColor = 'B';
                    break;
                default:
                    medalColor = 'A';
            }
            System.out.println(ranking + "등 메달의 색깔은 " + medalColor + " 입니다.");

    switch-case 문에 문자열 사용하기

    	String medal = "Gold";
            
            switch(medal) {
                case "Gold":
                    System.out.println("금메달 입니다.");
                    break;
                case "Silver":
                    System.out.println("은메달 입니다.");
                    break;
                case "Bronze":
                    System.out.println("동메달 입니다.");
                    break;
                default:
                    System.out.println("메달이 없습니다.");
                    break;
            }

    반복문

    주어진 조건이 만족할 때까지 수행문을 반복 수행함

    while, do-while, for 문이 있음

    조건의 만족과 반복 가능 여부에 대한 정확한 코딩을 해야 함

     

    while 문

    조건식이 참인 동안 수행문을 반복해서 수행

            int num = 1;
    
            int sum = 0;
            
            while(num <= 10){ // num이 10보다 같거나 작을 동안 수행문 반복
                sum += num; // sum에 num의 값을 더하여 저장
                num++; // num의 숫자를 1씩 증가
            }
            System.out.println("1부터 10까지의 합은 " + sum + "입니다.");

    do - while 문

    수행문을 한번은 수행하고 그 이후부터 조건식이 참일 동안 반복 수행

    int num = 1;
    int sum = 0;
    
    do{
    	sum += num;
        num++;
    }
    while(num <= 0);
    System.out.println(sum); // 1 출력

    for 문

    가장 많이 사용되는 반복문

    주로 조건이 횟수인 경우에 사용

    초기화식, 조건식, 증감식을 한번에 사용

    int sum = 0;
    
    for(int i = 0; i <= 10; i++){ // 초기화, 조건식, 증감식
    	sum += i;
    }
    System.out.println(sum); // 55 출력

    중첩된 반복문

    반복문 내부에서 반복문이 재사용됨

    // 구구단 예시
    for(int dan = 2; dan <=9; dan++){
    	for(int times = 1; times <=9; times++){
        System.out.println(dan + "X" + times + "=" + dan * times);
        }
    }
    /*
    2X1=2
    2X2=4
    2X3=6
    2X4=8
    .
    .
    .
    .
    .
    .
    9X9=81
    */

    continue 문

    반복문과 함께 쓰이며, 반복문 내부에서 continue 문을 만나면 이후 반복되는 부분을 수행하지 않고 조건식이나 증감식을 수행함

    // continue 문을 사용하여 구구단 홀수만 출력 예시
    for(int dan = 2; dan <=9; dan++){
    	for(int times = 1; times <=9; times++){
        if(dan % 2 == 0);
        	continue;
        System.out.println(dan + "X" + times + "=" + dan * times);
        }
    }
    /*
    3X1=3
    3X2=6
    .
    .
    5X1=5
    5X2=10
    .
    .
    .
    9X9=81
    */

    break 문

    반복문에서 break 문을 만나면 더 이상 수행하지 않고 반복문을 빠져나옴

    중첩된 반복문 내부에 있는 경우 가장 가까운 반복문 하나만 빠져나옴

    int sum = 0;
    int num = 0;
        
    for(num = 0; ; num++){
    	sum += num;
    	if(sum >= 100) 
    		break;
    }
            
    System.out.println("num : " + num); // 14
    System.out.println("sum : " + sum); // 105

     

    반응형