老师代码是我看问答区写的,还是不懂,老师能帮我详细讲解一下吗

来源:2-17 编程练习

sacred

2019-04-29 17:31:50

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>水仙花数</title>

</head>

<body>

    <script type="text/javascript">

var a,b,c,num;

for(n=100;n<1000;n++){

a=parseInt(n/100);

b=parseInt((n%100)/10);

c=parseInt(n%10);

num=a*a*a+b*b*b+c*c*c;

if (num==n) {

document.write(n+'<br/>')

}

}

</script>

</body>

</html>


写回答

1回答

好帮手慕星星

2019-04-29

同学你好,代码实现结果没有问题。

可以这样理解,水仙花数是一个三位数,每个位置的3次方和就等于这个数本身:

http://img.mukewang.com/climg/5cc6ca4200019d2705410406.jpg

按照这样的思路来实现就可以,首先要对1000以内的数循环,然后将个位,十位以及百位上的数字取出来计算3次方计算,与当前的数判断是否相等,如果相等就把这个数输出来。可以参考一下注释:

http://img.mukewang.com/climg/5cc6cb4700011a1d14350631.jpg

祝学习愉快!

0
hacred
h 看懂了,谢谢老师
h019-04-29
共1条回复

0 学习 · 36712 问题

查看课程