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