Dalam pengaturcaraan JavaScript, kadangkala adalah perlu untuk menentukan sama ada sesuatu nombor boleh dibahagi dengan dua nombor berbeza pada masa yang sama, seperti boleh dibahagi dengan 2 dan 3 pada masa yang sama. Keadaan ini adalah perkara biasa dalam beberapa algoritma dan pengiraan matematik. Seterusnya, kami akan meneroka cara melaksanakan fungsi ini menggunakan JavaScript.
Kaedah 1: Gunakan pernyataan bersyarat dan pengendali modulo
Kaedah yang paling mudah dan biasa ialah menggunakan pernyataan bersyarat dan pengendali modulo. Pertama, kami menggunakan operator modulo untuk mengira baki nombor ini kepada nombor pertama dan bakinya kepada nombor kedua. Kemudian, kita tentukan sama ada kedua-dua baki adalah 0. Jika ya, maka nombor itu boleh dibahagi dengan kedua-dua nombor pada masa yang sama.
Berikut ialah sekeping kod untuk menunjukkan kaedah ini:
function isDivisibleBy(num, div1, div2) { if(num % div1 === 0 && num % div2 === 0) { return true; } else { return false; } } console.log(isDivisibleBy(6, 2, 3)); // true console.log(isDivisibleBy(8, 2, 3)); // false
Fungsi ini menerima tiga parameter, iaitu nombor yang akan dinilai, nombor pertama dan nombor kedua. Jika nilai pulangan adalah benar, ini bermakna nombor ini dibahagikan dengan dua nombor ini pada masa yang sama.
Kaedah 2: Gunakan pembahagi sepunya terbesar
Kaedah lain ialah menggunakan pembahagi sepunya terhebat. Pembahagi sepunya terbesar ialah nombor terbesar antara dua nombor yang boleh membahagi kedua-dua nombor sama banyak. Kita boleh menggunakan algoritma Euclidean untuk mengira pembahagi sepunya terbesar.
Menggunakan algoritma Euclidean, dalam proses pengiraan pembahagi sepunya terbesar, kita boleh terus membahagikan nombor yang lebih besar dengan nombor yang lebih kecil sehingga bakinya ialah 0. Akhirnya, nombor yang lebih kecil ini adalah pembahagi sepunya terbesar mereka.
Jadi, bagaimanakah cara menggunakan pembahagi sepunya terbesar untuk menentukan sama ada sesuatu nombor boleh dibahagi dengan dua nombor pada masa yang sama? Kita hanya perlu mengira pembahagi sepunya terbesar bagi kedua-dua nombor ini, dan kemudian tentukan sama ada nombor itu adalah gandaan pembahagi sepunya terbesar.
Berikut ialah sekeping kod yang menunjukkan kaedah ini:
function gcd(x, y) { if(x % y === 0) { return y; } else { return gcd(y, x % y); } } function isDivisibleBy(num, div1, div2) { var gcd_num = gcd(div1, div2); if(num % gcd_num === 0) { return true; } else { return false; } } console.log(isDivisibleBy(6, 2, 3)); // true console.log(isDivisibleBy(8, 2, 3)); // false
Dalam kod ini, kita mula-mula mentakrifkan fungsi gcd untuk mengira pembahagi sepunya terbesar bagi dua nombor. Kemudian, kami mentakrifkan fungsi isDivisibleBy, yang juga menerima tiga parameter, mengira pembahagi sepunya terbesar bagi dua nombor, dan kemudian menentukan sama ada nombor yang akan dinilai ialah gandaan pembahagi sepunya terbesar.
Ringkasan
Dalam JavaScript, terdapat banyak cara untuk menentukan sama ada sesuatu nombor boleh dibahagikan dengan dua nombor pada masa yang sama. Kita boleh menggunakan pernyataan bersyarat dan pengendali modulo, dan kita juga boleh menggunakan pembahagi sepunya yang paling hebat. Kedua-dua kaedah ini agak mudah dan fleksibel untuk digunakan, dan anda boleh memilih kaedah yang hendak digunakan berdasarkan keperluan khusus.
Atas ialah kandungan terperinci JavaScript membahagi dua nombor serentak. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!