Rumah > hujung hadapan web > tutorial js > Bagaimana untuk mengira GCD dua atau lebih nombor/tatasusunan dalam JavaScript?

Bagaimana untuk mengira GCD dua atau lebih nombor/tatasusunan dalam JavaScript?

WBOY
Lepaskan: 2023-09-10 23:13:11
ke hadapan
1134 orang telah melayarinya

如何在 JavaScript 中计算两个或多个数字/数组的 GCD?

Pembahagi sepunya terbesar (GCD) daripada dua atau lebih nombor, juga dipanggil faktor sepunya terbesar (GCF) atau faktor sepunya tertinggi Faktor (HCF) ialah integer positif terbesar yang boleh dibahagikan dengan nilai tertentu tanpa baki. Dengan kata lain, GCD ialah pembahagi terbesar dua nombor.

Sebagai contoh, GCD 24 dan 36 ialah 12.

Bagaimana untuk mengira dua nombor?

Terdapat beberapa cara berbeza untuk mengira GCD bagi dua nombor, tetapi kaedah yang paling biasa ialah algoritma Euclidean.

Algoritma Euclidean ialah kaedah berulang yang bermula dengan dua nombor a dan b dan mencari GCD bagi a dan b. Idea asas algoritma Euclidean adalah untuk terus menolak nombor yang lebih kecil daripada nombor yang lebih besar sehingga dua nombor adalah sama.

  • Sebagai contoh, mari kita cari GCD untuk mengira 24 dan 36 menggunakan algoritma Euclidean.

  • Bermula dari 24 dan 36, kita tolak nombor yang lebih kecil (24) daripada nombor yang lebih besar (36) untuk mendapatkan 12.

    # 🎜🎜## 🎜🎜#
  • Kemudian, kita tolak nombor yang lebih kecil (12) daripada nombor yang lebih besar (24) untuk mendapatkan 12.
  • Oleh kerana kedua-dua nombor ini kini sama, kami telah menemui GCD! GCD dalam contoh ini ialah 12.
  • Bagaimana untuk mengira GCD lebih daripada dua nombor?

Anda juga boleh menggunakan algoritma Euclidean untuk mengira GCD lebih daripada dua nombor. Idea asas adalah sama seperti sebelumnya, tetapi bukannya menolak nombor yang lebih kecil daripada nombor yang lebih besar, anda menolak GCD dua nombor daripada nombor yang lebih besar.

    Sebagai contoh, kita dapati GCD 24, 36 dan 48.
  • Pertama, kami menggunakan algoritma Euclidean untuk mencari GCD bagi 24 dan 36, iaitu 12.
  • #🎜🎜🎜🎜🎜🎜🎜 #Kemudian, kami menggunakan algoritma Euclidean sekali lagi untuk mencari GCD 36 dan 48, iaitu 12.

  • Akhir sekali, kami menggunakan algoritma Euclidean buat kali terakhir untuk mencari GCD 48 dan 12, iaitu 12.

  • Memandangkan GCD 24, 36 dan 48 ialah 12, kita boleh berhenti di sini.

  • Contoh

  • Ini ialah contoh kod kerja lengkap tentang cara mengira GCD bagi dua atau lebih nombor dalam JavaScript.
<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <h2>Calculating GCD (Greatest Common Divisor)</h2>
   <div id="result1"></div>
   <div id="result2"></div>
   <script>
      function gcd(a, b) {
         // Make sure a is larger than b
         if (a < b) {
            var temp = a;
            a = b;
            b = temp;
         }

         // Iteratively subtract the smaller number from the larger number
         // until the two numbers are equal
         while (b != 0) {
            var temp = b;
            b = a % b;
            a = temp;
         }

         // Return the GCD
         return a;
      }
      // Calculate the GCD of 24 and 36
      var n1 = 24;
      var n2 = 36;
      var result = gcd(n1, n2);
      document.getElementById("result1").innerHTML = `GCD of ${n1} and ${n2} = ` + result;

      // Calculate the GCD of 24, 36, and 48
      var n1 = 8;
      var n2 = 12;
      var n3 = 20;
      var result = gcd(n1, n2, n3);
      document.getElementById("result2").innerHTML = `<br> GCD of ${n1}, ${n2}, and ${n3} =1`+ result;
   </script>
</body>
</html>
Salin selepas log masuk

Kesimpulan

Dalam artikel ini, kami mempelajari cara mengira Pembahagi Sepunya Terhebat (GCD) bagi dua atau lebih nombor menggunakan Algoritma Euclidean.

Atas ialah kandungan terperinci Bagaimana untuk mengira GCD dua atau lebih nombor/tatasusunan dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan