Contoh dalam artikel ini menerangkan cara jQuery mencari nombor sempurna dalam n. Kongsikan dengan semua orang untuk rujukan anda. Analisis khusus adalah seperti berikut:
Kesempurnaan nombor bergantung pada faktornya (nombor yang boleh membahagi nombor asal).
Contohnya: faktor 12 ialah 1, 2, 3, 4 dan 6. Apabila jumlah faktor sesuatu nombor lebih besar daripada nombor itu sendiri, nombor itu dipanggil nombor "lebihan". Jadi 12 ialah nombor lebihan kerana faktornya menambah hingga 16. Sebaliknya, apabila jumlah faktor sesuatu nombor adalah kurang daripada nombor itu sendiri, nombor itu dipanggil nombor "kekurangan". Jadi 10 ialah nombor defisit kerana faktornya (1, 2, dan 5) hanya menambah sehingga 8.
Nombor yang paling bermakna dan paling jarang ialah nombor yang faktornya digabungkan dengan nombor ini dengan tepat.
-- "Teorem Terakhir Fermat"
Untuk mencari nombor yang sempurna, anda mesti mengira faktor nombor itu terlebih dahulu.
Faktor: Jika integer n dibahagikan dengan m, hasilnya ialah integer tanpa baki, maka kita katakan bahawa m ialah faktor n. Perlu diingat bahawa hubungan ini hanya benar apabila dividen, pembahagi, dan hasil bagi kesemuanya adalah integer dan bakinya adalah sifar. Sebaliknya, kita panggil n gandaan m.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>JS Bin</title> </head> <body> <input type="text" id="num"/> <button id="calc">计算</button> <p id="result"></p> </body> </html>
/* * 寻找n以内的完美数 */ function $(id){ return document.getElementById(id); } //判断是否为正整数 function isIntNum(number){ var num = number; if((!isNaN(num)) && (parseInt(num) == parseFloat(num))){ return true; }else{ return false; } } $("calc").addEventListener("click",function(){ var inputNum = $("num").value, $result = $("result"), factorArr = [], resultArr = [], i = 0, j = 0, sum = 0; //检验输入是否为正整数 if(isIntNum(inputNum)){ console.log("right"); }else{ $result.innerHTML = "输入错误:请输入正整数"; return false; } //遍历所有数字 for(var k = 1;k < inputNum;k++){ //每次计算需重置变量 factorArr.length = 0; sum = 0; //寻找当前数字的因数 for(i = 1;i < Math.floor(k/2)+1; i++){ if(k % i === 0){ factorArr.push(i); } } //计算因数之和 for(var m = 0;m < factorArr.length;m++){ sum += factorArr[m]; } //因素和等于当前数,则符合完全数标准 if(sum === k){ resultArr.push(k); } } $result.innerHTML=resultArr; });
Saya harap artikel ini akan membantu pengaturcaraan jQuery semua orang.