Backend/Java

Java 문법 2주차 2-9,10 while, break, continue, 반복문 활용

chillmyh 2023. 11. 21. 20:04

2-9

반복문 while

형태 : while(조건문) { (연산) } :: while문

- 위처럼 while 문으로 사용하면 조건문을 만족해야지만 연산이 반복수행된다.

- 한번 반복할때마다 조건문을 체크해서 조건문이 불만족(false) 이면 반복을 중단한다.

do { (연산) } while(조건문) 형태로도 사용 가능하다. :: do- while문

 - 위처럼 do-while 문으로 사용하면 최초 1회 연산수행 후 조건문을 체크하여 더 반복할지 결정한다.

 - 반복하게 된다면 그 이후에는 한번 반복할때마다 조건문을 체크해서 조건이 불만족(false)이면 반복을 중단한다.

 

int number = 0;

// ~하는 동안
while (number < 3) { // number < 3 인 동안~~
    number++; // int number에 1씩 더한다.
    System.out.println(number + "출력!"); // number < 3동안 반복
}
// do ~ while. ~하고나서 ~동안
        int number = 4;
//        do {
//
//        } while (); // do-while 문 형태
        do {
            System.out.println(number + " 출력!"); // ~하고나서
        } while (number < 3); // 4 출력!. 조건에 만족하면 반복

 

break;

// break(깨부수다, 멈춤)
// 가장 가까운 블록의 for문 또는 switch문을 중단!
int number = 0;
while (number < 3) {
    number++;
    if (number ==2) {
        break;
    }
    System.out.println(number + "출력!");
}

 

for (int i=0; i<10; i++) {
    System.out.println("i: " + i);
    if (i==2) {
        break; // i가 2일 때, 가장 바깥 반복문이 종료
    }
    for (int j=0; j<10; j++) {
        System.out.println("j: " + j);
        if(j == 2){
            break; // j가 2일 때, 안쪽 반복문이 종료
        }
    }
}

-> 출력 i:0 j:0 j:1 j:2 -> i:1 j:0 j:1 j:2 -> i:2

 

package week02;

public class W16 {
    public static void main(String[] args) {
        // continue(계속하다)
        int number = 0;
        while (number < 3) {
            number++; // continue를 받고 while 구문이 종료되는 지점
            if (number ==2) {
                continue; // continue를 만나면 하위로직을 생략하고 다시 위로 돌아가 반복
            }
            System.out.println(number + "출력!");
        }
    }
}

출력

1출력!

3출력!

 

 

2-10

구구단 만들기

 

ackage week02;

import java.util.Scanner;

public class W17 {
    public static void main(String[] args) {
        // 입력받는 단을 제외하고 출력!
        Scanner sc = new Scanner(System.in);
        int passNum = sc.nextInt(); // 출력을 제외할 구구단수 값

        // 구구단 !!!!
        for (int i=2; i<=9; i++) { // 구구단의 첫 번째 수
            if (i == passNum) {
                continue;
            }
            for (int j=2; j<=9; j++) { //구구단의 두 번째 수
                System.out.println(i + "곱하기 " + j + "는 " + (i*j) + "입니다.");
            }
        }
    }
}

 

미니과제

입력하는 값의 구구단 출력하기

package week02;

import java.util.Scanner;

public class W17 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int thatNum = sc.nextInt(); // 입력받을 숫자

        if (thatNum >= 2 || thatNum <= 9) { // 입력받은 숫자가 2~9의 숫자일때
            for (int i=1; i<=9; i++) // 반복한다. i=1 에서 1씩 더하여 9가 될 때까지
            System.out.println(thatNum + " x " + i + " = " + thatNum*i + " 입니다." );
        }

    }
}