我应该创建一个收银机程序,提示项目数量,然后根据项目数量,提示每个项目的价格,然后计算总数。我很难掌握如何使用'while'循环来做到这一点。有人能指出我正确的方向吗?
这就是我现在所拥有的:我明白它会创建一个无限循环
var itemTotal = prompt("Please enter the amount of items that you're purchasing.");
items = parseInt(itemTotal)
var i = 0;
while(i = items) {
prompt ("Enter your item price here.");
i++;
}
答案 0 :(得分:0)
您希望while循环中的表达式在您希望循环时为true。在这种情况下,您希望i
小于items
while ( i < items ) {
/* get cost */
/* add cost to total */
i++;
}
我忘了指出i = items
会将items
的值分配给i
。要检查i
是否等于items
,您需要使用i == items
答案 1 :(得分:0)
如果您知道项目数(来自您的用户提示)为什么不使用for循环?要么会工作,但我认为for循环会更具可读性。
for (i=1; i <= NUM_FROM_PROMPT; i++) {
//do something here
}
带有while循环
i=1 //starting point
while (i <= NUM_FROM_PROMPT) {
//do something here
i++
}
答案 2 :(得分:0)
所以我试着得到你想要的东西:
var total = parseInt(prompt("How much items total?", "0"));
var price = 0;
for (var i = 0;i<total.length;i++) {
var individualPrice = prompt("How much does item " + (i+1) + " cost?", 0);
price+=parseInt(individualPrice);
}
alert("Total Price is " + price);
希望有所帮助。即使它可能是你的功课。
答案 3 :(得分:0)
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Statements/while
在该文档链接中,他们有一个看起来像这样的例子。
n = 0;
x = 0;
while (n < 3) {
n ++;
x += n;
}
因此您可以将此作为收银机计划的指南。
//get user input for number of items
var num_of_items = prompt("How many items?");
var n = 0;
var total = 0;
while (n < num_of_items) {
n ++;
//get cost of item
var cost_of_item = 0;
cost_of_item = parseInt(prompt("Cost of item"));
total = total + cost_of_item;
}
alert("total price: " + total);
我不确定你是如何处理用户输入的,所以我已经把它留给你了解:)
答案 4 :(得分:0)
var itemTotal = Number(prompt("Please enter the amount of items that you're purchasing."));
var priceTotal = 0
while(itemTotal) {
priceTotal += Number(prompt("Enter your item price here."));
itemTotal--;
}
alert("Please pay " + priceTotal);