TIL
[2050307 TIL] 키오스크 과제
도원좀비
2025. 3. 7. 21:09
과제가 끝난 날 과제를 새로 받았다....
키오스크 프로젝트
kioskLv1.java
더보기
더보기
더보기
더보기
package kioskLv1;
import java.util.Scanner;
public class KioskLv1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true) {
// 버거 메뉴 출력
System.out.println("[ 버거 메뉴 ]");
System.out.println("1. ShackBurger | W 10.6 | 토마토, 양상추, 쉑소스가 토핑된 치즈버거");
System.out.println("2. WhopperBurger | W 6.8 | 차원이 다른 크기 와퍼");
System.out.println("3. Cheeseburger | W 6.9 | 포테이토 번과 비프패티, 치즈가 토핑된 치즈버거");
System.out.println("4. BigMac | W 5.5 | 참깨빵 위에 순쇠고기 패티2장 특별한 소스 양상추");
System.out.println("0. 종료 | 종료");
// 사용자로부터 입력 받기
System.out.print("원하는 메뉴를 선택하세요: ");
int choice = scanner.nextInt();
scanner.nextLine(); // nextInt() 후 남은 개행문자 처리
// 선택한 메뉴에 따라 처리
switch (choice) {
case 1:
System.out.println("ShackBurger 선택!.");
break;
case 2:
System.out.println("WhopperBurger 선택!");
break;
case 3:
System.out.println("Cheeseburger 선택!");
break;
case 4:
System.out.println("BigMac 선택!");
break;
case 0:
System.out.println("프로그램을 종료합니다.");
scanner.close();
return; // 프로그램 종료
default:
System.out.println("잘못된 선택입니다. 다시 입력하세요.");
}
}
}
}
LV2 (Menu를 리스트를 통해 관리)
MenuItem.java를 통해 필드를 생성하고 리스트에 넣
KioskLv2.java
더보기
더보기
더보기
더보기
package kioskLv2;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class KioskLv2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 햄버거 메뉴 아이템 생성
List<MenuItem> menuItems = new ArrayList<>();
menuItems.add(new MenuItem(1,"ShackBurger", 10.6, "토마토, 양상추, 쉑소스가 토핑된 치즈버거"));
menuItems.add(new MenuItem(2,"WhopperBurger", 6.8, "차원이 다른 크기 와퍼"));
menuItems.add(new MenuItem(3,"Cheeseburger", 6.9, "포테이토 번과 비프패티, 치즈가 토핑된 치즈버거"));
menuItems.add(new MenuItem(4,"BigMac", 5.5, "참깨빵 위에 순쇠고기 패티2장 특별한 소스 양상추"));
while (true) {
// 메뉴 출력
System.out.println("[ 버거 메뉴 ]");
for (MenuItem item : menuItems) {
item.display(); // 각 메뉴 항목 출력
}
System.out.println("0. 종료");
// 사용자 입력 받기
System.out.print("원하는 메뉴를 선택하세요: ");
int choice = scanner.nextInt();
scanner.nextLine(); // 개행문자 처리
// 사용자 선택 처리
if (choice == 0) {
System.out.println("프로그램을 종료합니다.");
scanner.close();
break; // 프로그램 종료
}
if (choice > 0 && choice <= menuItems.size()) {
MenuItem selectedItem = menuItems.get(choice - 1); // 메뉴 항목 선택
System.out.println(selectedItem.getName() + " 선택! " + selectedItem.getDescription());
} else {
System.out.println("잘못된 선택입니다. 다시 입력하세요.");
}
}
}
}
MenuItem.java
더보기
더보기
더보기
더보기
package kioskLv2;
public class MenuItem {
private Integer num;
private String name;
private double price;
private String description;
public MenuItem(Integer num,String name, double price, String description) {
this.num = num;
this.name = name;
this.price = price;
this.description = description;
}
public Integer getNum() {
return num;
}
public String getName() {
return name;
}
public double getPrice() {
return price;
}
public String getDescription() {
return description;
}
public void display() {
System.out.println(num +". " + name + " | W " + price + " | " + description);
}
}
LV3(제어 클래스 생성)
Kiosk.java클래스로 프로그램 메뉴를 관리하고 입력을 처
KioskLv3.java
더보기
더보기
더보기
더보기
package kioskLv3;
import kioskLv2.MenuItem;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class KioskLv3 {
public static void main(String[] args) {
// 햄버거 메뉴 아이템 생성
List<kioskLv2.MenuItem> menuItems = new ArrayList<>();
menuItems.add(new kioskLv2.MenuItem(1,"ShackBurger", 10.6, "토마토, 양상추, 쉑소스가 토핑된 치즈버거"));
menuItems.add(new kioskLv2.MenuItem(2,"WhopperBurger", 6.8, "차원이 다른 크기 와퍼"));
menuItems.add(new kioskLv2.MenuItem(3,"Cheeseburger", 6.9, "포테이토 번과 비프패티, 치즈가 토핑된 치즈버거"));
menuItems.add(new kioskLv2.MenuItem(4,"BigMac", 5.5, "참깨빵 위에 순쇠고기 패티2장 특별한 소스 양상추"));
Kiosk kiosk = new Kiosk(menuItems);
kiosk.start();
}
}
MenuItem.java
더보기
더보기
더보기
더보기
package kioskLv3;
public class MenuItem {
private Integer num;
private String name;
private double price;
private String description;
public MenuItem(Integer num,String name, double price, String description) {
this.num = num;
this.name = name;
this.price = price;
this.description = description;
}
public Integer getNum() {
return num;
}
public String getName() {
return name;
}
public double getPrice() {
return price;
}
public String getDescription() {
return description;
}
public void display() {
System.out.println(num +". " + name + " | W " + price + " | " + description);
}
}
Kiosk.java
더보기
더보기
더보기
더보기
package kioskLv3;
import kioskLv2.MenuItem;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Kiosk {
// 햄버거 메뉴 아이템 생성
List<MenuItem> menuItems = new ArrayList<>();
public Kiosk(List<MenuItem> menuItems) {
this.menuItems = menuItems;
}
public void start(){
Scanner scanner = new Scanner(System.in);
while (true) {
// 메뉴 출력
System.out.println("[ 버거 메뉴 ]");
for (MenuItem item : menuItems) {
item.display(); // 각 메뉴 항목 출력
}
System.out.println("0. 종료");
// 사용자 입력 받기
System.out.print("원하는 메뉴를 선택하세요: ");
int choice = scanner.nextInt();
scanner.nextLine(); // 개행문자 처리
// 사용자 선택 처리
if (choice == 0) {
System.out.println("프로그램을 종료합니다.");
break; // 프로그램 종료
}
if (choice > 0 && choice <= menuItems.size()) {
MenuItem selectedItem = menuItems.get(choice - 1); // 메뉴 항목 선택
System.out.println(selectedItem.getName() + " 선택! " + selectedItem.getDescription());
} else {
System.out.println("잘못된 선택입니다. 다시 입력하세요.");
}
}
scanner.close();
}
}
https://github.com/sukh115/Kiosk(키오스크 깃 허브)
GitHub - sukh115/Kiosk
Contribute to sukh115/Kiosk development by creating an account on GitHub.
github.com