2-17 編程練習
水仙花數是這樣的一個數字,它的每個位數上的數字的3次冪之和等於它本身,例如(1*1*1+5*5*5+3*3*3)=153;
請在頁面中輸出1000以內的水仙花數
任務
1、獲取到1000以內的水仙花數,我們可以使用循環來進行判斷,注意循環的條件以及循環的初始變量值
2、循環每一個三位數,當滿足水仙花數的條件時就在頁面中輸出這個數
參考代碼:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<script>
// a³+b³+c³=100a+10b+c
for(var a=1;a<9;a++){
for(var b=0;b<9;b++){
for(var c=0;c<9;c++){
if(a*a*a+b*b*b+c*c*c==100*a+10*b+c){
document.write(100*a+10*b+c+"<br/>");
}
}
}
}
</script>
</body>
</html>
百度百科中水仙花數的求解代碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script type="text/javascript">
var a = 0, b = 0, c = 0;
for (var i = 100; i < 1000; i++)
{
a = i % 10;//a爲個位數
b = parseInt(((i / 10) % 10));//b爲十位數
c = parseInt(i / 100);//c爲百位數
if (i === a * a * a + b * b * b + c * c * c)
{
document.write('水仙花數: ' + i + '<br/>');
}
}
</script>
</body>
</html>