Heim  >  Artikel  >  Web-Frontend  >  JavaScript-Programm zum Finden der nächsten Zahl in einem Array

JavaScript-Programm zum Finden der nächsten Zahl in einem Array

王林
王林nach vorne
2023-09-07 16:25:081378Durchsuche

JavaScript 程序查找数组中最接近的数字

Wir werden ein JavaScript-Programm schreiben, um die nächstgelegene Zahl in einem Array zu finden, indem wir jedes Element mit einer Zielzahl vergleichen und das nächstgelegene Element verfolgen. Das Programm verwendet eine Schleife, um jedes Element im Array zu durchlaufen und verwendet eine bedingte Anweisung, um die Differenz zwischen der Zielzahl und dem aktuellen Element zu vergleichen. Wenn die Differenz kleiner ist als die aktuell größte Differenz, aktualisieren wir die nächste Zahl. Das Ergebnis dieses Programms ist die Zahl im angegebenen Array, die dem Ziel am nächsten kommt.

Methode

Dieses Programm findet in einem Zahlenarray die Zahl, die einem Zielwert am nächsten kommt -

  • Definieren Sie eine Variable, um die Differenz zwischen dem Zielwert und dem aktuellen Wert in der Schleife zu speichern.

  • Stellen Sie die Differenz auf eine sehr große Zahl ein, sodass jede Zahl im Array kleiner wird und zur neuen nächsten Zahl wird.

  • Durchlaufen Sie das Zahlenarray und berechnen Sie für jede Zahl die absolute Differenz zwischen dem Zielwert und der aktuellen Zahl.

  • Wenn die aktuelle Differenz kleiner als die gespeicherte Differenz ist, aktualisieren Sie die gespeicherte Differenz auf die aktuelle Differenz und speichern Sie die aktuelle Zahl als nächstliegende Zahl.

  • Wiederholen Sie diesen Vorgang für alle Zahlen im Array.

  • Nachdem die Schleife endet, ist die Zahl, die dem Zielwert am nächsten kommt, die in der Variablen gespeicherte Zahl.

Beispiel

Dies ist ein Beispiel für eine JavaScript-Funktion, die als Eingabe ein Array von Zahlen und eine Zielzahl verwendet und die Zahl im Array zurückgibt, die der Zielzahl am nächsten kommt -

function findClosest(numbers, target) {

   let closest = numbers[0]; 
   // Assume the first number is the closest
   let closestDiff = Math.abs(target - closest); 
   
   // Calculate the difference between the target and closest
   for (let i = 1; i < numbers.length; i++) {
      let current = numbers[i];
      let currentDiff = Math.abs(target - current); 
      
      // Calculate the difference between the target and current number
      if (currentDiff < closestDiff) {
         closest = current; 
         
         // Update the closest number
         closestDiff = currentDiff; 
         
         // Update the closest difference
      }
   }
   return closest;
}
const arr = [45, 23, 25, 78, 32, 56, 12];
const target = 50;

console.log(findClosest(arr, target));

Anleitung

    Die
  • -Funktion findClosest hat zwei Parameter: ein Array von Zahlen und eine Zielzahl target.

  • Wir erstellen eine Variable closest und setzen sie gleich der ersten Zahl im numbers-Array, vorausgesetzt, dies ist die Zahl, die dem Ziel am nächsten kommt.

  • Wir erstellen außerdem eine Variable closestDiff, die mithilfe von Math.abs() die Differenz zwischen der Zielzahl und der nächstliegenden Zahl berechnet. Math.abs()Gibt den absoluten Wert einer Zahl zurück und stellt sicher, dass die Differenz immer positiv ist.

  • Dann verwenden wir eine for-Schleife, um das Array Zahlen zu durchlaufen. Für jede Iteration speichern wir die aktuelleZahl in der aktuellen Variablen und berechnen die Differenz zwischen der Zielzahl und der aktuellen Zahl in aktuellerDiff.

  • Wenn currentDiff kleiner als closestDiff ist, aktualisieren wir closest auf current und closestDiff auf currentDiff.

  • Abschließend gibt die Funktion die Zahl zurück, die dem Ziel am nächsten liegt.

Das obige ist der detaillierte Inhalt vonJavaScript-Programm zum Finden der nächsten Zahl in einem Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen