본문 바로가기
IT/JAVA

JAVA - mini 프로젝트 - 키오스크 만들기

by 비준 2023. 6. 11.

1. 조건

  -> 1. 전체 메뉴 출력

  -> 전체 메뉴를 클릭하면 전체 메뉴중에 하나를 선택하여 메뉴와 가격 출력하기

  -> 2. 관리자 로그인

  -> 로그인 시, 아이디와 패스워드가 맞아야함 틀릴 시, 로그인 안됨

  -> 로그인 성공 하면 1. 메뉴 추가, 2. 메뉴 수정, 3. 메뉴 삭제, 4. 나가기

  -> 3. 종료

 

====> 총합과 주문 내역 잔돈 출력은 아직 만들지 않았습니다....

 

2. 코드

package java_learn;

 

import java.util.Scanner;

 

public class java1 {

//1. 전체 메뉴 ->주문

//관리자 로그인 -> 메뉴 추가, 메뉴 삭제, 메뉴 수정

// 종료

 

void PrintMainMenu() {

System.out.print("####카페 입니다####");

System.out.println();

System.out.print("1. 전체 메뉴");

System.out.println();

System.out.print("2. 관리자 로그인");

System.out.println();

System.out.print("3. 종료");

System.out.println();

System.out.print("메뉴를 선택하세요 : ");

}

void PrintSelectMenu (String[] menu, int[] Price) {

for(int i = 0; i < menu.length; i++) {

if(menu[i] == null) { //메뉴가 등록되지 않았을 때

System.out.print((i + 1)+"번 메뉴가 준비중에 있습니다");

System.out.println();

}else { //메뉴가 등록되어있다면 출력

System.out.println(menu[i]);

System.out.println(Price[i]);

}

}

 

}

void ChoiceViewMenu(String[] menu, int[]Price, int MenuChoice) {

System.out.printf("%d번 선택하셨습니다.",MenuChoice);

System.out.println();

for(int i = 0; i <= menu.length; i++) {

if(i == MenuChoice) {

if(menu[i - 1] == null) { //메뉴가 등록되어있지 않다면

System.out.print("선택한 메뉴는 없거나 아직 미등록상태입니다");

System.out.println();

return;

}else {

System.out.println("선택한 메뉴는" + menu[i - 1] + " 입니다");

System.out.println("가격은" + Price[i - 1] + "원입니다");

}

}

}

}

void AdminPage(String[] menu, int[] Price) {

System.out.println("관리자 페이지에 들어왔습니다.");

String adminId = "admin";

int adminPw = 1234;

 

System.out.print("ID를 입력하세요 : ");

String inputId = sc.next();

System.out.print("PW를 입력하세요 : ");

int inputPw = sc.nextInt();

 

if(adminId.equals(inputId) && adminPw == inputPw) {

System.out.println("로그인 성공!");

System.out.print("메뉴를 선택하세요 :\n"

+ "1. 메뉴 추가\n"

+ "2. 메뉴 수정\n"

+ "3. 메뉴 삭제\n"

+ "4. 나가기\n");

int choice = sc.nextInt();

switch(choice) {

case 1:

System.out.println("메뉴 추가입니다.");

System.out.print("몇번째 메뉴에 추가합니까? : ");

int selectMenu = sc.nextInt();

if(menu[selectMenu - 1] == null ) {

System.out.print("메뉴 이름을 입력하세요 :");

menu[selectMenu - 1] = sc.next();

System.out.println("가격을 입력하세요 :");

Price[selectMenu - 1] = sc.nextInt();

}else {

System.out.println("해당 자리에는 메뉴가 존재합니다.");

break;

}

 

break;

case 2:

System.out.println("메뉴 수정입니다.");

System.out.print("몇번째 메뉴를 수정합니까? : ");

int refact = sc.nextInt();

if(menu[refact] == null) {

System.out.println("해당 위치는 메뉴가 존재하지 않습니다.");

break;

}else {

System.out.print("메뉴명을 입력하세요 :");

menu[refact - 1] = sc.next();

System.out.print("가격을 입력하세요 :");

Price[refact - 1] = sc.nextInt();

}

break;

case 3:

System.out.println("메뉴 삭제입니다.");

System.out.print("몇번째 메뉴를 삭제합니까? : ");

int delMenu = sc.nextInt();

if(menu[delMenu] == null) {

System.out.println("해당위치는 비어있습니다.");

break;

}else {

menu[delMenu - 1] = null;

Price[delMenu - 1] = 0;

}

break;

case 4:

break;

default :

System.out.println("잘못된 입력입니다.");

break;

}

}

else {

System.out.println("로그인 실패....");

}

 

}

static Scanner sc = new Scanner(System.in);

public static void main(String[] args) {

java1 java = new java1();

String[] menu = new String[3];

int[] price = new int[3];

boolean isChoice = true;

while(isChoice == true) {

java.PrintMainMenu();

int choice = sc.nextInt();

switch(choice) {

case 1:

System.out.println("1번을 선택하였습니다");

java.PrintSelectMenu(menu, price);

System.out.println("메뉴를 주문하시겠습니까? 주문하지 않으려면 10을 입력하세요 :");

System.out.print("메뉴를 번호로 선택하세요 : ");

int choice2 = sc.nextInt();

if(choice2 == 10) {

break;

}

System.out.println();

java.ChoiceViewMenu(menu, price, choice2);

break;

case 2:

System.out.println("2번을 선택하였습니다");

java.AdminPage(menu,price);

break;

case 3:

System.out.println("종료합니다.");

isChoice = false;

break;

default :

System.out.println("잘못 입력하였습니다.");

break;

 

}

}

 

}

}

'IT > JAVA' 카테고리의 다른 글

JAVA - 예제 - this  (0) 2023.06.12
JAVA - 예제 - 클래스 (Class) 선언  (0) 2023.06.12
JAVA - 실습5 - 메소드(Method)  (0) 2023.06.08
JAVA - 실습4 - 메소드(Method)  (0) 2023.06.08
JAVA - 실습3 - 메소드(Method)  (0) 2023.06.08

댓글