package com.coffee;
import java.util.Scanner;

public class CoffeeMachine {
 
 Scanner scan = new Scanner(System.in);
 protected int coffee = 10;
 protected int milk = 10;
 protected int suger =10;
 protected int amount;//들어오는돈
 protected int change=10000;//거스름돈통
 protected int a;  //스캔용
 
 public void process(){
  while(true){
   System.out.print("1: 커피마시기, 2:관리자, 3: 종료 >>");   
   a= scan.nextInt();
   if (a==1)
    buy();
   else if (a==2)
    manager();
   else if (a==3){
    System.out.println("종료하였습니다.");
    break;}
   else
    System.out.println("잘못입력 하였습니다.");
  }
 }
 public void setCoffee(){
  System.out.print("커피=>");
  coffee += scan.nextInt();
  System.out.print("프림=>");
  milk += scan.nextInt();
  System.out.print("설탕=>");
  suger += scan.nextInt();
  
 }
 public void sales(){
  System.out.print("동전수거금액 >>>>");
  a = scan.nextInt();
  if(amount >= a){
  amount -= a;
  System.out.println("요청한금액을 처리하였습니다.");
  }else{System.out.println("금액이 부족합니다.");}
  
 }
 public void cashier(){
  System.out.print("거스름통 채울 금액 >>>>");
  change += scan.nextInt();;
  System.out.println("요청한금액을 처리하였습니다.");
 }
 public void buy(){
  //동전투입
  System.out.print("동전을 넣으세요 (커피값 300원) : ");
  a= scan.nextInt();
  //판매
  if (coffee >=5  && milk >= 3 &&  suger >= 1 ){
   if (a>=300 && a <= change+300){
   System.out.println("거스름 : " +  (a - 300));
   System.out.println("맛 좋은 커피가 준비되었습니다.");
   //커피한잔 소모 
   coffee -= 5;
   milk -= 3;
   suger -= 1;
   //잔고정리
   change -= a-300;
   amount += a;}
   else if (a < 300){
   System.out.println("금액이 부족합니다. 커피값은 300원 입니다.");}
   else if (a > change+300){
   System.out.println("거스름돈이 부족합니다. #관리자한테 상담하세요 02-xxx-xxxx#.");
   }
  }
  else{System.out.println("커피가 부족합니다. #관리자한테 상담하세요 02-xxx-xxxx#");
  }
 }
 public void print(){
  System.out.println("======현재 자판기 정보======");
  System.out.println("커피양 : " + coffee);
  System.out.println("프림양 : " + milk);
  System.out.println("설탕양 : " + suger);
  System.out.println("커피값통 : " + amount);
  System.out.println("거스름통 : " + change);
 }
 public void manager(){
  System.out.println("관리자모드 입니다.");
  print();
  while(true){
  System.out.print("1: 커피 프림 설탕 채우기, 2: 동전수거, 3:거스름통 채우기, 4: 관리자모종료 >>");
  a = scan.nextInt();
  if (a==1)
    setCoffee();
  else if (a==2)
    sales(); 
  else if (a==3)
     cashier();
  else if (a==4)    
   {System.out.println("관리자모드를 종료하였습니다.");break;}
  else
   System.out.println("잘못입력 하였습니다.");
 }
}

 public static void main(String[] args){
  CoffeeMachine cm = new CoffeeMachine(); 
  cm.process();
 }
}

/*
-----더해볼꺼----

은닉화

set메소드

get메소드

클래스 나누기 - 상속,객체생성
*/


'Java > 연습문제' 카테고리의 다른 글

자판기 만들기 (모범 답안)  (0) 2012.04.14
자판기 만들기 3( 커피값받는통 거스름돈통 분리)  (0) 2012.04.14
자판기 만들기 2  (0) 2012.04.14
자판기 만들기  (0) 2012.04.13
교통정보 만들기 (간단히)  (0) 2012.04.13

+ Recent posts