Java Scanner 연습하기2

사용자가 입력한 값을 그대로 출력하고, 종료되지 않도록 한다.

게임을 시작 후 종료하기 버튼을 누르기 전까지 실행 중인 것처럼 동작한다.

개발 요구사항

  • 사용자 문자열 입력 필요
  • 사용자가 입력한 값 출력
  • 반복 실행
  • exit 입력하면 종료

문제1. exit 입력하기 전까지 문자열 입력한 값 출력하기

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

        while (true) {
            System.out.println("exit 입력하면 프로그램이 종료됩니다.");
            System.out.println("문자열을 입력해주세요.");
            String str = scanner.nextLine();

            if (str.equals("exit")) {
                System.out.println("프로그램을 종료합니다");
                break;
            }

            System.out.println("입력한 문자열: " + str + "\n");
        }
    }
}

입력

"문자열을 입력해주세요." 다음에 값을 기입한 후 Enter키를 입력한다.

안녕하세요.

exit 입력하면 프로그램이 종료되는지 확인한다.

exit

출력

exit 입력하면 프로그램이 종료됩니다.
문자열을 입력해주세요.
안녕하세요.
입력한 문자열: 안녕하세요.

exit 입력하면 프로그램이 종료됩니다.
문자열을 입력해주세요.
exit
프로그램을 종료합니다

Process finished with exit code 0

code 0를 반환하면서 정상 종료된 것을 확인할 수 있다.

두 개의 숫자를 입력하여 더하는 프로그램

Scanner를 활용한 예제 프로그램

개발 요구사항

  • 사용자 숫자 입력 필요 (정수)
  • 입력된 두 개의 숫자 합쳐서 출력
  • 반복 실행
  • 두 개의 숫자 0인 경우 프로그램 종료

문제2. 두 개의 숫자를 합하여 출력하는 코드

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

        while (true) {
            System.out.println("첫 번째, 두 번째 \"0\"을 입력하면 프로그램이 종료됩니다.");
            System.out.println("첫 번째 정수을 입력해주세요.");
            int firstValue = scanner.nextInt();

            System.out.println("두 번째 정수을 입력해주세요.");
            int secondValue = scanner.nextInt();

            if (firstValue == 0 && secondValue == 0) {
                System.out.println("프로그램을 종료합니다");
                break;
            }

            System.out.println("입력한 숫자의 합: " + (firstValue + secondValue) + "\n");
        }
    }
}

입력

"첫 번째 정수를 입력해주세요." 부분에서 입력

10

"두 번째 정수를 입력해주세요." 부분에서 입력

20

출력

첫 번째, 두 번째 "0"을 입력하면 프로그램이 종료됩니다.
첫 번째 정수을 입력해주세요.
10
두 번째 정수을 입력해주세요.
20
입력한 숫자의 합: 30

첫 번째, 두 번째 "0"을 입력하면 프로그램이 종료됩니다.
첫 번째 정수을 입력해주세요.

입력으로 종료하기

"첫 번째 정수를 입력해주세요." 부분에서 입력

0

"두 번째 정수를 입력해주세요." 부분에서 입력

0

출력

첫 번째, 두 번째 "0"을 입력하면 프로그램이 종료됩니다.
첫 번째 정수을 입력해주세요.
0
두 번째 정수을 입력해주세요.
0
프로그램을 종료합니다

Process finished with exit code 0

문제3. 입력한 숫자를 모두 합하여 출력하는 코드

입력한 숫자를 모두 합하여 출력하는 코드 작성하기

개발 요구사항

  • 사용자 숫자 입력 필요 (정수)
  • 반복 실행
  • 숫자 0인 경우
    • 사용자가 입력한 숫자 합해서 출력
    • 프로그램 종료
import java.util.Scanner;

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

        int sum = 0;

        while (true) {
            System.out.println("\"0\"을 프로그램이 종료됩니다.");
            System.out.println("정수을 입력해주세요.(종료한 경우 모든 숫자의 합 출력)");
            int value = scanner.nextInt();
            sum += value;

            if (value == 0) {
                System.out.println("\n프로그램을 종료합니다");
                break;
            }

            System.out.println();
        }
        System.out.println("입력한 숫자의 합: " + sum);
    }
}

입력

30
20
10
0

출력

"0"을 프로그램이 종료됩니다.
정수을 입력해주세요.
30

"0"을 프로그램이 종료됩니다.
정수을 입력해주세요.
20

"0"을 프로그램이 종료됩니다.
정수을 입력해주세요.
10

"0"을 프로그램이 종료됩니다.
정수을 입력해주세요.
0
프로그램을 종료합니다
입력한 숫자의 합: 60

Process finished with exit code 0

문제4. 홀수, 짝수

숫자를 입력 받아 홀수인지 짝수인지 출력하는 프로그램

  • "숫자를 입력해주세요." 출력 후 사용자로부터 숫자를 입력 받는다.
  • 입력 받은 숫자에 따라 "{홀수or짝수}입니다." 출력한다.

java 코드

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

        System.out.print("숫자를 입력해주세요. ");
        int ed = scanner.nextInt();

        if (ed % 2 == 0) {
            System.out.println("짝수 입니다.");
        } else {
            System.out.println("홀수 입니다.");
        }
    }
}

입력

21

출력

숫자를 입력해주세요. 21
홀수 입니다.

문제5. 구구단 출력

구구단을 숫자를 입력 받아 단의 구구단을 출력하는 프로그램

Java 코드

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

        System.out.print("구구단. 숫자를 입력해주세요. ");
        int tableNumber = scanner.nextInt();

        for (int i = 1; i <= 9; i++) {
            System.out.println(tableNumber + "x" + i + " = " + tableNumber * i);
        }
    }
}

입력

3

출력

구구단. 숫자를 입력해주세요. 3
3x1 = 3
3x2 = 6
3x3 = 9
3x4 = 12
3x5 = 15
3x6 = 18
3x7 = 21
3x8 = 24
3x9 = 27