어린이 보호 구역에서 자동차의 속도를 제어하는 문제
<출력 예시>
- 자동차 출발 문구 출력
- 속력 입력
- 30키로 이상이면 속도를 줄여주세요 출력
- 30키로 이하라면 주행을 계속 해주세요 출력
- 0이라면 자동차 정지 문구 출력하면서 종료
- 2번부터 4번은 반복
<조건>
- 클래스
- Main
- Car
- Driver
- 더 필요하다면 추가 가능하지만 최소한 이렇게 세개는 사용할 것
- Main
- dirver 인스턴스
- 자동차 출발 문구
- driverMotion 이라는 메소드 호출
- Car
- speed : int (private으로 설정할 것)
- setSpeed() : 무조건 사용
- getSpeed() : 무조건 사용
- isNormalSpeed() : boolean
- speedController()
- Driver
- dirverMotion()
- 무조건 사용을 제외한 다른 메소드는 이름도 변경 가능하고 용도도 변경 가능
//Car 클래스
public class Car {
private int speed;
public Car() {}
public int getSpeed() {
return speed;
}
public void setSpeed(int speed) {
this.speed = speed;
}
//속도에 따라 불리언값 지정
boolean isNomalSpeed() {
if(getSpeed()>30) {
return false;
}else {
return true;
}
}
//정상 속도면 계속 주행 아니면 속도 감소
void speedController() {
if(isNomalSpeed()) {
System.out.println("주행을 계속해주세요.");
}else {
System.out.println("속도를 줄여주세요.");
}
}
}
//Driver 클래스
public class Driver {
Scanner sc = new Scanner(System.in);
void dirverMotion() {
Car car = new Car();
while(true) {
System.out.println("자동차 속력을 입력해주세요.");
int speed = sc.nextInt();
car.setSpeed(speed);
if(car.getSpeed()!=0) {
car.speedController();
}else {
break;
}
}
System.out.println("자동차가 정지합니다.");
}
}
//Run 클래스
public class Run {
public static void main(String[] args) {
System.out.println("자동차 출발");
Driver driver = new Driver();
driver.dirverMotion();
}
}
'자바스터디 문제풀이' 카테고리의 다른 글
TV구매 문제 - 상속 활용 (0) | 2023.08.14 |
---|---|
각국 통화 화폐 문제- 상속 활용 (0) | 2023.08.13 |
격투 게임 만들기 - 클래스 활용문제 (0) | 2023.08.13 |
등수 찍어보기 - 클래스 활용문제 (0) | 2023.08.09 |
신발사이즈 찍어보기 - 클래스 활용문제 (0) | 2023.08.09 |