JAVA/코드

쇼핑몰 프로그램

record2080 2025. 1. 3. 23:53
package shopping;

import java.util.Scanner;

public class Test {
	public static void main(String[] args) {

		Scanner sc=new Scanner(System.in);

		int[] proList=new int[3];
		proList[0]=2;
		proList[1]=3;
		proList[2]=0;

		while(true) {
			System.out.println();
			System.out.println("=== 메 뉴 ===");
			System.out.println("1. 전체 출력");
			System.out.println("2. 상품 구매");
			System.out.println("3. 재고 추가");
			System.out.println("0. 프로그램 종료");
			System.out.println("======");

			System.out.print("메뉴 번호 입력 >> ");
			int action=sc.nextInt();

			if(action==0) {
				break;
			}
			else if(action==1) { // 전체 출력
				for(int i=0;i<proList.length;i++) {
					if(proList[i]>0) {
						System.out.println((i+1)+"번상품 "+proList[i]+"개");
					}
					else {
						System.out.println((i+1)+"번상품 품절");
					}
				}
			}
			else if(action==2) { // 상품 구매
				// 상품 선택 : R
				int num; // scope 이슈해결
				while(true) {
					System.out.print("상품번호 입력 >> ");
					num=sc.nextInt();
					if(1<=num && num<=proList.length) {
						break;
					}
					System.out.println("올바른 번호로 다시 입력해주세요!");
				}
				// 상품의 상태 출력
				if(proList[num-1]>0) {
					System.out.println((num)+"번상품 "+proList[num-1]+"개");
				}
				else {
					System.out.println((num)+"번상품 품절");
					System.out.println("구매불가능합니다...");
					continue;
				}

				// 구매 : U
				proList[num-1]--;
				System.out.println("상품 구매 완료!");
			}
			else if(action==3) { // 재고 추가 
				// 상품 선택  
				int num; // scope 이슈 해결
				while(true) {
					System.out.print("상품번호 입력 >> ");
					num=sc.nextInt();
					if(1<=num && num<=proList.length) {
						break;
					}
					System.out.println("올바른 번호로 다시 입력해주세요!");
				}
				// 상품의 상태 출력
				if(proList[num-1]>0) {
					System.out.println((num)+"번상품 "+proList[num-1]+"개");
				}
				else {
					System.out.println((num)+"번상품 품절");
				}

				int cnt; // scope 이슈 해결
				while(true) {
					System.out.print("추가할 상품의 개수 입력 >> ");
					cnt=sc.nextInt();
					if(cnt>0) {
						break;
					}
					System.out.println("정확한 재고를 입력해주세요!");
				}
				proList[num-1]+=cnt; // 
				System.out.println("재고 추가 완료!");
			}
			else {
				System.out.println("유효성 검사");
			}
		}

	}
}