所謂'水仙花數(shù)'是指一個3位數(shù)吹缔,其各位數(shù)字立方和等于該數(shù)本身商佑。
例如:153是一個 '水仙花數(shù)',
因為153 = 1的三次方 + 5的三次方 + 3的三次方。
第一種方法
for (a = 1; a < 10; a++) {
for (b = 0; b < 10; b++) {
for (c = 0; c < 10; c++) {
if (a * a * a + b * b * b + c * c * c == a * 100 + b * 10 + c) {
document.write(a * 100 + b * 10 + c);
document.write("<br>");
}
}
}
}
第二種方法
for(i = 100; i < 1000; i++){
var a = parseInt(i / 100);//找百位數(shù)
var b = parseInt(i % 100 / 10);//找十位數(shù)
var c = parseInt(i % 100 % 10)//找個位數(shù)
if((a * a * a + b * b * b + c * c * c) == i){
document.write(i);
document.write("<br>");
}
}
反驗證是否屬于水仙花數(shù)
function isNumber(num) {
if (num && Number(num)) {
var a = parseInt(num / 100); //找百位數(shù)
var b = parseInt(num % 100 / 10); //找十位數(shù)
var c = parseInt(num % 100 % 10); //找個位數(shù)
var resault = '';
if (a * a * a + b * b * b + c * c * c == num) {
resault = true;
} else {
resault = false;
}
} else {
alert('請輸入數(shù)值')
}
return resault;
}
document.write(isNumber('371'));
哈哈厢塘,知道水仙花是什么了么茶没?在這個地方主要是練習(xí)所學(xué)的for循環(huán)嵌套以及if語句,function的用法晚碾。效果分別是什么呢礁叔?1561987211(1).png
前邊的數(shù)字是第一種方法用了document顯示在了頁面上。
true則是最后一個反驗證迄薄,371是水仙花數(shù)所以得出true琅关;
然后第二種方法我用了console顯示在控制臺里邊:
1561987358(1).png
兩種方法結(jié)果一樣,不出意外會有很多種方法得出同樣的正確答案讥蔽。敬請指導(dǎo)涣易。