var sum = 0;
var Discount = 0;
var afterDiscount = 0;
var Price;
while (true) {
Price = (prompt("Please enter a Price or -1 to STOP"));
if (Price === -1)
sum=sum+Price;
if (Price <= 50) {
alert(Price);
} else if (Price > 50 && Price <= 100) {
alert(Price-Price*.10);
} else if (Price > 100) {
alert(Price-Price*.20);
}
}
alert(sum);
我需要知道如何让循环正确停止并将总和输出为警告
答案 0 :(得分:1)
您可以(并且很可能必须)使用break;
退出循环。
像:
if (price == -1) {
break;
}
答案 1 :(得分:1)
您可以在没有循环的情况下提示。完全删除while
。
答案 2 :(得分:1)
您的代码是无限循环:
while (true) {
...
}
当你得到-1时,你可以突破循环;请考虑以下事项:
if (Price === -1){
break;
}
退出循环后,您现在可以按照自己的意愿处理sum
。在您的示例中,您执行此操作:
alert(sum);
现在,在循环退出后,这将按预期工作。
注意:强>
要让sum
正确增加其价值,请不要忘记将prompt
结果投放到int
,因为prompt
始终会返回string
1}}。请考虑以下问题:
Price = parseInt(prompt("Please enter a Price or -1 to STOP"));
^^^^^^^^
答案 3 :(得分:0)
<html>
<body>
<script>
var sum = 0,
Price = 0,
loop = true;
while ( loop ) {
console.log( 'Suma: ' + sum );
Price = (prompt( "Please enter a Price or -1 to STOP" ));
if ( Price == -1 ) {
//sum--;
loop = false;
} else {
sum = sum + Number(Price);
}
if (Price <= 50) {
alert(Price);
} else if (Price > 50 && Price <= 100) {
alert(Price-Price*.10);
} else if (Price > 100) {
alert(Price-Price*.20);
}
}
alert(sum);
</script>
</body>
</html>