方案一:
var a,b,c;
//循环1到100的所有数
for(var i = 100;i<1000;i++){
//求出百位上的数字
a= i/100;
//求出位上的数字
b=i%100/10;
//求出个位上的数字
c= i%100%10;
//转化为整数
a=parseInt(a);
b=parseInt(b);
c=parseInt(c);
//对个十百位上的数字开立方相加
z = Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3);
//判断是是否相同 如果相同就是水仙花数
if(i==z){
console.log('水仙花数'+z);
}
}
方案二
var a,b,m;
循环每一位上的数字 然后立方 然后相加 通过个位 十位 百位求出这个数 然后比较 如果相等就是水仙花数
for(var i=1;i<10;i++) {
for (var j = 0; j < 10; j++) {
for (var f = 0; f < 10; f++) {
a = (i * i * i) + (j * j * j) + (f * f * f);
b=i*100+j*10+f;
m = parseInt(b);
if(a ==m){
console.log('水仙花数'+a);
}
}
}
}
js求水仙花数(两种解决方案)
最新推荐文章于 2023-03-06 00:47:17 发布