monoteen

Maneger

Nov 24th, 2014
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.50 KB | None | 0 0
  1. import java.util.Date;
  2. import java.io.*;
  3.  
  4. public class Manager{
  5.   public static void main(String[] args)    {
  6.     /* 프로그램 수행에 필요한 변수 선언 */
  7.     boolean bFalg = true;
  8.     int iMenu=0;
  9.     int iTotal = 0;
  10.     Date d;
  11.        
  12.     DataInputStream dis = new DataInputStream(System.in);
  13.        
  14.     /* PC의 수량을 입력받는다. */
  15.     try    {
  16.       System.out.print("등록할 컴퓨터의 수량을 입력하세요 : \t");
  17.       iMenu = Integer.parseInt(dis.readLine());
  18.     }catch(Exception e)    {
  19.     }
  20.        
  21.     /* 입력된 수량의 크기로 PCInfo 클래스 객체 배열을 만든다. */
  22.     PCInfo pc[] = new PCInfo[iMenu];
  23.        
  24.     /* 객체 배열에 CPU, 메모리 정보가 설정된 PCInfo객체의 레퍼런스를 저장한다. */
  25.     for(int id=0; id<pc.length ;id++)    {
  26.       String strCpu="";
  27.       int iMem=0;
  28.       System.out.println("PC "+id+"번");
  29.       try    {
  30.         System.out.print("컴퓨터의 기종을 입력하세요 : \t");
  31.         strCpu = dis.readLine();
  32.         System.out.print("메모리의 양을 입력하세요(GB) : \t");
  33.         iMem = Integer.parseInt(dis.readLine());
  34.       } catch(Exception e)    {
  35.       }
  36.      
  37.       pc[id] = new PCInfo();
  38.       pc[id].setPCInof(id, strCpu, iMem);
  39.     }
  40.  
  41.     do   {
  42.       System.out.println("\n=====================================");
  43.       System.out.println("1. 컴퓨터 사용 시작 ["+0+" - "+(pc.length-1)+"]");
  44.       System.out.println("2. 컴퓨터 사용 종료 ["+0+" - "+(pc.length-1)+"]");
  45.       System.out.println("3. 매출정보 출력");
  46.       System.out.println("4. 프로그램 종료");
  47.       System.out.println("=====================================");
  48.       System.out.print("메뉴의 번호를 선택하세요(1-4) : \t");
  49.  
  50.       try    {
  51.         iMenu = Integer.parseInt(dis.readLine());
  52.       } catch(Exception e)    {
  53.         System.out.println("1-5까지의 숫자로 입력해주세요.");
  54.         continue;
  55.       }
  56.            
  57.       switch(iMenu)    {
  58.         case 1:
  59.           /* 관리자로부터 PC번호를 입력받아 해당
  60.           PCInfo객체의 start 메서드를 호출한다. */
  61.           try    {
  62.             System.out.print("컴퓨터의 번호를 입력하세요 : \t");
  63.             iMenu = Integer.parseInt(dis.readLine());
  64.           } catch(Exception e)    {
  65.             continue;
  66.           }
  67.           d = new Date();
  68.           pc[iMenu].start(d.getTime());
  69.           break;
  70.         case 2:
  71.           /* 관리자로부터 PC번호를 입력받아 해당
  72.           PCInfo객체의 stop 메서드를 호출한다. */
  73.           try    {
  74.             System.out.print("컴퓨터의 번호를 입력하세요 : \t");
  75.             iMenu = Integer.parseInt(dis.readLine());
  76.           } catch(Exception e)    {
  77.             continue;
  78.           }
  79.           d = new Date();
  80.           System.out.println("사용금액은 "+pc[iMenu].stop(d.getTime())+"원 입니다.");
  81.           break;
  82.         case 3:
  83.           /* PCInfo 객체 getTotal 메서드를 호출하여 매출액과 그 합을 출력한다. */
  84.           iTotal = 0;
  85.           for(int id=0; id<pc.length ;id++)    {
  86.             System.out.println("PC "+id+"번 : "+pc[id].getTotal()+"원");
  87.             iTotal = iTotal + pc[id].getTotal();
  88.           }
  89.           System.out.println("전체 매출 : "+iTotal+"원");
  90.           break;
  91.         case 4:
  92.           bFalg = false;
  93.           break;
  94.         default:
  95.           break;
  96.       }
  97.     }while(bFalg);
  98.   }
  99. }
Advertisement
Add Comment
Please, Sign In to add comment