我想编写一个计算数字所有数字之和的程序。我看到了类似的帖子,但没有一个是用HTML编写的。我没有得到任何输出,网页完全空白。
<!DOCTYPE html>
<html>
<head>
<title>sample</title>
</head>
<body>
<p id ="demo"></p>
<script>
n=prompt("enter a number");
function adddigits(n)
{
s=0;
while(n!=0)
{
s=s+n%10;
n=n/10;
}
document.getElementById("demo").innerHTML = "sum of the digits" + s ;
}
</script>
</body>
</html>
答案 0 :(得分:2)
计算数字所有数字之和的程序
正确的方式:
n = prompt("enter a number");
function getSum(n) {
if (!/^\d+$/.test(n)) { // check for non-digit input
throw new Error('Wrong number: ' + n);
}
// converting each digit from text representation into number
// and getting sum of them
var sum = n.split('').map(Number).reduce(function(a,b) { return a + b; });
document.getElementById("demo").innerHTML = "sum of the digits: " + sum ;
}
getSum(n); // calling function to calculate the sum of numbers
&#13;
<p id ="demo"></p>
&#13;
答案 1 :(得分:0)
无论如何,你没有打电话给你的功能。您可以通过向以下内容添加以下代码来实现:
$( document ).ready(function() {
var n=prompt("enter a number");
adddigits(n);
});
答案 2 :(得分:0)
您忘记删除其余部分的尾随部分,例如n=n/10
变为n=Math.floor(n/10)
。
var n = prompt("enter a number");
adddigits(n);
function adddigits(n) {
var s = 0;
while (n != 0) {
s = s + n % 10;
n = Math.floor(n / 10);
}
alert(s);
}