문제 - 스피드를 계속 증속이나 감속한다.
while문 사용
전체 코드입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
package sec02_verify;
import java.util.Scanner;
public class 문제6_1 {
public static void main(String[] args) {
boolean run = true;
int speed = 0; //현재속도를 0으로 초기화 했다.
int keyCode = 0; //선택
Scanner scanner = new Scanner(System.in);
while (run) { //무한루프를 돌리겠다. run이 true일때 계속 실행하겠다는 뜻. true니까 계속 실행함.
System.out.println("-----------------------------");
System.out.println(" 1.증속 | 2.감속 | 3.중지");
System.out.println("-----------------------------"); // 옵션 보여주는 창
System.out.print("선택: ");
keyCode = scanner.nextInt(); //먼저 숫자를 입력할 수 있는 곳
if (keyCode == 1) {
speed ++;
}
else if (keyCode == 2) {
speed--;
}
else if (keyCode == 3){
break; //3이 입력되면 프로그램 종료라는 문구와 함께 빠져나간다.
} // while문은 여기까지 반복이 된다.
System.out.println("현재속도 = " + speed); // while문에서 break를 만나지 않으면 이 문구를 출력한다.
}
System.out.println("프로그램 종료"); //break만나면 while문 밖에 있는 이 문구를 출력한다.
scanner.close();
}
}
|
cs |
1) 변수를 선언과 초기화 해줍니다.
2) run이 true이니까
while(true)일때 계속 돈다는 뜻입니다.
계속해서
1. 증속, 2. 감속, 3. 중지가 나와줘야합니다.
그리고 keyCode를 입력받습니다.
증속할건지 감속할건지 중지할건지
3) while문안에 if문을 사용합니다.
switch문을 사용하여도 됩니다.
while문은 무한루프이기 때문에 무조건 빠져나갈 구멍을 만들어주어야합니다.
여기서는 keyCode가 3일때 while문이 break됩니다.
4) while문 안에 있을때는 if문을 거치고 나서
현재속도 = speed를 출력해주고
break를 만나 while문이 끝나게 되면
while문 바깥에서 프로그램 종료를 외칩니다.
프로그램 종료는 저 코드에서 break; 위에
와도 됩니다.
출력결과입니다.
728x90
'JAVA > java 문제' 카테고리의 다른 글
[자바JAVA] 반복문 - 숫자 두개 사이에 공배수 제외하고 출력하기 for문 (0) | 2020.10.04 |
---|---|
[자바JAVA] 반복문 - 구구단 출력하기 for문 (0) | 2020.10.03 |
[자바JAVA] 반복문- 배수의 값만 출력하기 for문 continue문 if문 (0) | 2020.10.03 |
[자바JAVA] 조건문 - 전기 사용량 입력받아 이번달 요금 출력하기 if문 switch문 (0) | 2020.10.02 |
[자바JAVA] 조건문 - 주민등록번호를 입력받아 여자, 남자 구분, 년도 출생 구분하기 if문 , switch문 , charAt(), String타입을 char타입으로 (0) | 2020.10.02 |