2024.12.16.월

kinkin_a·2024년 12월 16일

내일배움캠프 TIL

목록 보기
21/100

JAVA 퀘스트

lv2.스파르타 자판기

import java.util.Scanner;
import java.util.NoSuchElementException;

public class Main {
    public static void main(String[] args) {
        String[] drink = {"사이다", "콜라", "식혜", "솔의눈"};
        int[] price = {1700, 1900, 2500, 3000};//판매음료수와 가격

        for (int i = 0; i < drink.length; i++) {
            System.out.println(drink[i] + price[i]);
        }//화면에 판매할 음료수와 가격을 프린트

        Scanner scanner = new Scanner(System.in);
        System.out.println("구입하고 싶은 음료수를 입력하세요:");
        String name = scanner.nextLine();
        System.out.println("입력한 음료수: " + name);//음료수 입력

        int j = 0;//잔액 계산용 변수, 배열을 찾을 때 쓰기 위한 용도. 
        int money = 0;//지불할 금액 변수
        for (int i = 0; i < drink.length; i++) {//음료수 길이만큼 반복해서
            if (name.equals(drink[i])) {//입력한 음료수랑 판매 음료수와 이름이 같다면
                System.out.println("지불할 금액을 입력하세요:");
                money = scanner.nextInt();//금액을 입력 받아 변수에 저장
                j = i;//계산용 변수에 저장
                break;//if문 종료
            } else {//이름이 같지 않고
                if (i == drink.length - 1) {//음료수 종류수만큼 반복이 끝났다면
                    j = 5;//변수를 5로 지정하고 나가기(숫자는 음료수 종류수 이상이어야함)
                    System.out.println("판매하지 않는 음료수입니다.");
                }

            }

        }
    //    System.out.println(j);

        if (j != 5) {//이름이 같고
            if (price[j] <= money) {//판매액이 지불금액보다 작거나 같다면
                int change = money - price[j];//잔액 계산해서
                System.out.println("잔액" + change + "원");//출력
            } else {//-라면
                System.out.println("잔액이 부족합니다.");//잔액이 부족하다고 종료
            }

        } else {//이름이 달라 변수가 5라면 
            System.out.println("안녕히 가세요.");//종료

        }
    }
}

<느낀 점>

java 프로그램 인텔리제이 설치하는데 시간이 많이 걸렸고,(VSCode에 설치하려 했으나 결국 실패)
일단 내가 아는 기초문법으로 생각나는대로 코드를 작성해봤는데, 길이가 너무 길다. 힌트를 보니 처음 보는 함수가 있었는데, 내일 한 번 이 코드로 작성해보는 것도 좋을 것 같다.

0개의 댓글