>웹 프론트엔드 >JS 튜토리얼 >JavaScript에서 두 숫자가 대략 같은지 확인하는 방법은 무엇입니까?

JavaScript에서 두 숫자가 대략 같은지 확인하는 방법은 무엇입니까?

PHPz
PHPz앞으로
2023-09-12 22:29:021071검색

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

이 튜토리얼에서는 두 숫자가 대략 같은지 확인합니다. 주어진 두 숫자가 같으면 yes, 그렇지 않으면 no를 인쇄합니다.

하지만 분명히 말씀드리자면 여기서는 마술을 부리는 것이 아닙니다. 기본적으로 엡실론 값도 제공해야 합니다.

따라서 이 두 숫자의 절대 차이를 계산한 다음 엡실론과 비교할 때 절대 차이가 엡실론보다 작으면 두 숫자는 거의 같고 그렇지 않으면 그렇지 않습니다. 주어진 두 숫자가 6.79와 6.75이고 엡실론이 0.05라고 가정하여 먼저 절대 차이를 계산하면 결과는 abs(6.79-6.75)=0.04로 엡실론 값보다 작으므로 숫자는 대략 같습니다.

왜 절대적인가?라고 생각하실 수도 있습니다.

즉, 첫 번째 빼려는 값이 최소값이고 빼려는 값이 최소값인 경우입니다. 이 경우 차이는 음수가 되어 원하는 출력이 제공되지 않습니다. . 따라서 절대값을 취하면 이 문제를 해결할 수 있습니다.

예를 들어 보겠습니다.

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

두 숫자 사이의 절대 차이를 계산하면 0.02가 되고 주어진 엡실론 값은 0.01이므로 절대 차이가 엡실론 값보다 크므로 대략 동일하지 않습니다.

Syntax h2>

다음은 두 숫자가 대략 같은지 확인하는 구문/의사 코드입니다. -

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

Algorithm

  • 1단계 - 사용자로부터 두 숫자와 엡실론 값을 입력합니다. 이 값을 각각 변수 val1, val2, epsilon에 할당하십시오.
  • 2단계 - 두 숫자 val1과 val2 사이의 절대 차이를 계산합니다. 이 차이를 변수 차이에 할당합니다.
  • 3단계 - 차이가 엡실론보다 작은지 확인하세요. true인 경우 두 숫자가 대략 동일하다는 올바른 메시지를 표시합니다. false인 경우 숫자가 대략 동일하지 않다는 올바른 메시지를 표시합니다.

예제 1

함수 코드를 HTML 코드에 삽입하여 실제로 어떻게 작동하는지 확인해 보겠습니다. 다양한 숫자와 엡실론 값을 입력해 다양한 상황을 확인해 보세요.

<!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>

엡실론 가설을 정의할 수도 있습니다. 사용자가 엡실론 값을 제공하고 싶지 않으면 엡실론 값을 가져와서 사용자가 이 두 값을 입력했는지 확인해야 합니다. 왜냐하면 이 두 숫자를 제공해야 하기 때문입니다. .

예제 2

다음 프로그램에서는 숫자가 대략 같은지 확인합니다. 사용자가 숫자 중 하나 또는 둘 다를 입력하지 않은 경우 메시지를 표시하도록 코드를 최적화했습니다.

<!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>

1번과 2번의 값이 다른지 확인해주세요. 숫자를 하나 또는 둘 다 입력하지 않고 확인해 보세요. 사용자가 입력하지 않을 경우를 대비하여 엡실론의 기본값을 1.5로 설정했기 때문에 해당 값으로 작동합니다.

그래서 두 숫자가 대략 같은지 확인하는 방법을 알아봤습니다.

>

위 내용은 JavaScript에서 두 숫자가 대략 같은지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제