영상
문제
<script>
/*
[문제]
item배열은 상품의 번호이다.
price배열은 상품의 가격이다.
count배열은 상품의 재고 개수이다.
item과 price, count는 한 세트이다.
order배열은 오늘 주문이 들어온 상품의 인덱스 번호이다.
단, 주문할 때마다 count 재고에서 하나씩 감소하고, 재고가 0이면 주문할 수 없다.
주문할 수 없을 때는 "주문 불가"를 출력하시오.
order의 주문을 토대로 오늘 매출을 구하시오.
count 리스트도 출력하시오.
[정답]
order = 0, count = 2,1,2,1
order = 1, count = 2,0,2,1
order = 3, count = 2,0,2,0
order = 3, 주문불가
order = 2, count = 2,0,1,0
order = 2, count = 2,0,0,0
order = 1, 주문불가
매출 = 12600
*/
let item = [1001, 1002, 1003, 1004];
let price = [500, 1200, 4300, 2300];
let count = [3, 1, 2, 1];
let order = [0, 1, 3, 3, 2, 2, 1];
</script>
Java
복사
해설
<script>
/*
[문제]
item배열은 상품의 번호이다.
price배열은 상품의 가격이다.
count배열은 상품의 재고 개수이다.
item과 price, count는 한 세트이다.
order배열은 오늘 주문이 들어온 상품의 인덱스 번호이다.
단, 주문할 때마다 count 재고에서 하나씩 감소하고,
재고가 0이면 주문할 수 없다.
주문할 수 없을 때는 "주문 불가"를 출력하시오.
order의 주문을 토대로 오늘 매출을 구하시오.
count 리스트도 출력하시오.
[정답]
order = 0, count = 2,1,2,1
order = 1, count = 2,0,2,1
order = 3, count = 2,0,2,0
order = 3, 주문불가
order = 2, count = 2,0,1,0
order = 2, count = 2,0,0,0
order = 1, 주문불가
매출 = 12600
*/
let item = [1001, 1002, 1003, 1004];
let price = [500, 1200, 4300, 2300];
let count = [3, 1, 2, 1];
let order = [0, 1, 3, 3, 2, 2, 1];
let total = 0;
for(let i=0; i<order.length; i++) {
document.write("order = " + order[i] + ", ");
if(count[order[i]] > 0) {
count[order[i]] -= 1;
total += price[order[i]];
document.write("count = " + count + "<br>");
} else {
document.write("주문불가<br>");
}
}
document.write(total + "<br>");
//----------------------------------------------------
total = 0;
let i = 0;
while(i < order.length) {
document.write("order = " + order[i] + ", ");
if(count[order[i]] > 0) {
count[order[i]] -= 1;
total += price[order[i]];
document.write("count = " + count + "<br>");
} else {
document.write("주문불가<br>");
}
i += 1;
}
document.write(total + "<br>");
</script>
Java
복사