Heim  >  Artikel  >  Web-Frontend  >  jQuery-Methode zum Finden perfekter Zahlen in n_jquery

jQuery-Methode zum Finden perfekter Zahlen in n_jquery

WBOY
WBOYOriginal
2016-05-16 15:53:001530Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie jQuery perfekte Zahlen innerhalb von n findet. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Die Perfektion einer Zahl hängt von ihren Faktoren ab (den Zahlen, die die ursprüngliche Zahl teilen können).

Zum Beispiel: Die Faktoren von 12 sind 1, 2, 3, 4 und 6. Wenn die Summe der Faktoren einer Zahl größer ist als die Zahl selbst, wird die Zahl als „Überschusszahl“ bezeichnet. 12 ist also eine Überschusszahl, da sich ihre Faktoren zu 16 addieren. Wenn andererseits die Summe der Faktoren einer Zahl kleiner ist als die Zahl selbst, wird die Zahl als „defizitäre“ Zahl bezeichnet. 10 ist also eine Defizitzahl, da sich ihre Faktoren (1, 2 und 5) nur zu 8 addieren.

Die aussagekräftigsten und seltensten Zahlen sind diejenigen, deren Faktoren sich genau addieren. Diese Zahlen sind perfekte Zahlen.

-- „Fermats letzter Satz“

Um eine perfekte Zahl zu finden, müssen Sie zunächst die Faktoren der Zahl berechnen. Baidu überprüft, was Faktoren sind.

Faktor: Wenn eine ganze Zahl n durch m dividiert wird, ist das Ergebnis eine ganze Zahl ohne Rest, dann sagen wir, dass m ein Faktor von n ist. Es ist zu beachten, dass diese Beziehung nur dann gilt, wenn Dividend, Divisor und Quotient alle ganze Zahlen sind und der Rest Null ist. Umgekehrt nennen wir n ein Vielfaches von 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; 
});

Ich hoffe, dass dieser Artikel für alle bei der jQuery-Programmierung hilfreich sein wird.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn