JavaScript ialah bahasa pengaturcaraan yang biasa digunakan yang menyediakan fungsi yang sangat berkuasa untuk menyelesaikan pelbagai masalah. Dalam artikel ini, kami akan meneroka cara menggunakan JavaScript untuk mencari nombor perdana sehingga 100.
Nombor perdana merujuk kepada nombor asli lebih besar daripada 1 yang tidak boleh dibahagikan dengan nombor asli lain kecuali 1 dan nombor itu sendiri. Dalam sains komputer, menyelesaikan nombor perdana adalah masalah yang sangat biasa kerana ia memainkan peranan yang sangat penting dalam bidang seperti penyulitan dan kriptografi. Salah satu cara paling mudah untuk menguji sama ada nombor adalah perdana ialah dengan pembahagian percubaan. Idea asas pembahagian percubaan ialah: untuk setiap nombor n untuk dikesan, cuba bahagikan n dengan setiap nombor dari 2 hingga n-1 Jika n tidak boleh dibahagikan, maka n ialah nombor perdana.
Berikut ialah kod untuk melaksanakan algoritma ini dalam JavaScript:
//定义一个函数来检测一个数是否为素数 function isPrime(num) { //1和0不是素数 if (num <= 1) { return false; } //2是素数 if (num === 2) { return true; } //大于2的偶数不是素数 if (num % 2 === 0) { return false; } //尝试从3到num-1之间的奇数去整除num for (let i = 3; i < num; i += 2) { if (num % i === 0) { return false; } } //如果都无法整除,那么num就是素数 return true; } //测试函数 for (let i = 1; i <= 100; i++) { if (isPrime(i)) { console.log(i + "是素数"); } else { console.log(i + "不是素数"); } }
Dalam kod di atas, kami mula-mula mentakrifkan fungsi isPrime untuk mengesan sama ada nombor adalah perdana. Proses pelaksanaan khususnya ialah:
Seterusnya kita menggunakan gelung untuk menguji sama ada setiap nombor antara 1 dan 100 ialah nombor perdana.
Saya tidak akan menunjukkan semua hasil keluaran di sini, tetapi keputusan yang dijalankan semuanya betul.
Dalam pembangunan sebenar, kita mungkin perlu menentukan sama ada nombor yang lebih besar daripada 100 ialah nombor perdana. Dalam kes ini, menggunakan pembahagian percubaan akan sangat memakan masa kerana bilangan nilai dari 2 hingga num-1 adalah sangat tinggi. Oleh itu, kita perlu menggunakan algoritma yang lebih cekap untuk menentukan sama ada nombor adalah perdana. Salah satu algoritma yang biasa digunakan ialah "kaedah ayak Ehrlich", yang boleh mencari semua nombor perdana dari 1 hingga n dalam kerumitan masa O(nloglogn). Walau bagaimanapun, dalam artikel ini, kami hanya memperkenalkan dan melaksanakan pembahagian percubaan secara ringkas.
Atas ialah kandungan terperinci Bagaimana untuk mencari nombor perdana dalam 100 dalam JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!