Heim  >  Artikel  >  Web-Frontend  >  Wie kann man in JavaScript überprüfen, ob zwei Zahlen ungefähr gleich sind?

Wie kann man in JavaScript überprüfen, ob zwei Zahlen ungefähr gleich sind?

PHPz
PHPznach vorne
2023-09-12 22:29:02987Durchsuche

如何在 JavaScript 中检查两个数字近似相等?

In diesem Tutorial prüfen wir, ob zwei Zahlen ungefähr gleich sind. Wenn die beiden angegebenen Zahlen gleich sind, geben wir „Ja“ aus, andernfalls „Nein“.

Aber lassen Sie mich klarstellen, wir zaubern hier nicht, im Grunde müssen wir auch einen Epsilon-Wert angeben.

Wenn wir also die absolute Differenz zwischen diesen beiden Zahlen berechnen und sie dann mit Epsilon vergleichen, sind die beiden Zahlen ungefähr gleich, wenn die absolute Differenz kleiner als Epsilon ist, andernfalls nicht. Angenommen, die beiden angegebenen Zahlen sind 6,79 und 6,75, Epsilon ist 0,05, also berechnen wir zuerst die absolute Differenz. Das Ergebnis ist abs (6,79-6,75)=0,04, was kleiner als der Epsilon-Wert ist, sodass die Zahlen ungefähr gleich sind.

Sie denken vielleicht: Warum ist es absolut?

Das ist also der Fall, wenn der erste Wert, von dem wir subtrahieren möchten, der Minimalwert ist und der Wert, den wir subtrahieren möchten, der Minimalwert ist. In diesem Fall ist die Differenz negativ und es wird nicht die gewünschte Ausgabe erzielt . Indem wir also den absoluten Wert nehmen, können wir dieses Problem beseitigen.

Nehmen wir ein Beispiel

Input:
   Value1= 2.03
   Value2= 2.01
   Epsilon= 0.01
Output:
   Approximately NOT equal

Wenn wir die absolute Differenz zwischen zwei Zahlen berechnen, beträgt sie 0,02 und der angegebene Epsilon-Wert beträgt 0,01, sodass unsere absolute Differenz größer als der Epsilon-Wert ist und daher nicht annähernd gleich ist.

Syntax h2>

Das Folgende ist die Syntax/Pseudocode zum Überprüfen, ob zwei Zahlen ungefähr gleich sind –

Const difference= Math.abs(val1-val2);
if(difference<epsilon){
   approximately equal
} else {
   Aapproximately NOT equal
}

Algorithmus

  • Schritt 1 – Geben Sie zwei Zahlen und einen Epsilon-Wert vom Benutzer ein. Weisen Sie diese Werte den Variablen val1, val2 bzw. epsilon zu.
  • Schritt 2 – Berechnen Sie die absolute Differenz zwischen zwei Zahlen val1 und val2. Ordnen Sie diese Differenz der Variablen Differenz zu.
  • Schritt 3 – Prüfen Sie, ob die Differenz kleiner als Epsilon ist. Wenn dies zutrifft, wird die korrekte Meldung angezeigt, die besagt, dass die beiden Zahlen ungefähr gleich sind. Bei „false“ wird die korrekte Meldung angezeigt, dass die Zahlen nicht annähernd gleich sind.

Beispiel 1

Lassen Sie uns den Funktionscode in HTML-Code einbetten, um zu überprüfen, wie er in der realen Welt funktioniert. Versuchen Sie, verschiedene Zahlen und Epsilon-Werte einzugeben, um verschiedene Situationen zu überprüfen.

<!DOCTYPE html>
<html>
<body>
   <h1>Approximately Equal?</h1>
   <input type="number" id="val1" placeholder="Enter number1.." /><br><br>
   <input type="number" id="val2" placeholder="Enter number2.." /><br><br>
   <input type="number" id="epsilon" placeholder="Enter max epsilon.." /><br><br>
   <input type="button" value="IsEqual?" onClick="checkIf_approx_equal()" style="color: blue; margin-left: 35px;"/>
   <h2 id="writeHere"></h2>
   <script>
      function checkIf_approx_equal(){
         var val1=document.getElementById("val1").value
         var val2=document.getElementById("val2").value
         var epsilon=document.getElementById("epsilon").value
         var difference= Math.abs(val1-val2);
         console.log(difference)
         if(difference<epsilon){
            document.getElementById(&#39;writeHere&#39;).innerHTML="Yes Approximately Equal"
         } else {
            document.getElementById(&#39;writeHere&#39;).innerHTML="No Approximately NOT Equal"
         }
      }
   </script>
</body>
</html>

Wir können auch unsere Epsilon-Hypothese definieren: Wenn der Benutzer keinen Epsilon-Wert angeben möchte, müssen wir den Epsilon-Wert abrufen und prüfen, ob der Benutzer diese beiden Werte eingegeben hat, da die Angabe dieser beiden Zahlen erforderlich ist .

Beispiel 2

Im folgenden Programm prüfen wir, ob die Zahlen ungefähr gleich sind. Wir haben den Code so optimiert, dass eine Meldung angezeigt wird, wenn der Benutzer keine oder beide Nummern eingegeben hat.

<!DOCTYPE html>
<html>
<body>
   <h1>Approximately Equal?</h1>
   <input type="number" id="val1" placeholder="Enter number1.." /><br><br>
   <input type="number" id="val2" placeholder="Enter number2.." /><br><br>
   <input type="number" id="epsilon" placeholder="Enter max epsilon.." /><br><br>
   <input type="button" value="IsEqual?" onClick="checkIf_approx_equal()" style="color: blue; margin-left: 35px;"/>
   <h2 id="writeHere"></h2>
   <script>
      function checkIf_approx_equal(){
         var val1=document.getElementById("val1").value
         var val2=document.getElementById("val2").value
         var epsilon=document.getElementById("epsilon").value

         if(!val1){
            document.getElementById(&#39;writeHere&#39;).innerHTML="Please enter a value in first Box"
            return;
         }
         if(!val2){
            document.getElementById(&#39;writeHere&#39;).innerHTML="Please enter a value in second Box"
            return;
         }
         if(!epsilon) epsilon=1.5

         var difference= Math.abs(val1-val2);
         console.log(difference)
         if(difference<epsilon){
            document.getElementById(&#39;writeHere&#39;).innerHTML="Equal"
         } else {
            document.getElementById(&#39;writeHere&#39;).innerHTML="Not Equal"
         }
      }
   </script>
</body>
</html>

Bitte überprüfen Sie die unterschiedlichen Werte von Nummer 1 und Nummer 2. Versuchen Sie es, ohne eine oder beide Zahlen einzugeben. Da wir den Standardwert von epsilon auf 1,5 setzen, funktioniert es mit diesem Wert, falls der Benutzer ihn nicht eingibt.

Also haben wir eine Möglichkeit gesehen, zu überprüfen, ob zwei Zahlen ungefähr gleich sind.

>

Das obige ist der detaillierte Inhalt vonWie kann man in JavaScript überprüfen, ob zwei Zahlen ungefähr gleich sind?. 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