js、编写一个程序,要求输出1000~1200以内的全部素数(质数)。
时间: 2024-09-25 08:12:42 浏览: 52
在JavaScript中,我们可以编写一个简单的函数来找出指定范围内的所有素数。这里是一个基本的算法实现:
```javascript
function isPrime(num) {
if (num <= 1) return false;
for (let i = 2; i * i <= num; i++) {
if (num % i === 0) return false;
}
return true;
}
function findPrimes(start, end) {
let primes = [];
for (let num = start; num <= end; num++) {
if (isPrime(num)) {
primes.push(num);
}
}
return primes;
}
// 输出1000到1200之间的所有素数
let result = findPrimes(1000, 1200);
console.log("1000至1200之间的素数有:", result);
相关问题
6、编写一个程序,要求输出1000~1200以内的全部素数(质数)。js
编写一个JavaScript程序,用于找出1000到1200之间的所有质数,可以采用埃拉托斯特尼筛法(Sieve of Eratosthenes)算法。以下是简单的实现步骤:
```javascript
function findPrimes(start, end) {
// 创建一个布尔数组,初始值都设为true,表示所有数字都是素数
const primes = new Array(end + 1).fill(true);
primes[0] = false;
primes[1] = false;
// 从2开始,将每个素数的倍数标记为非素数
for (let i = 2; i * i <= end; i++) {
if (primes[i]) {
for (let j = i * i; j <= end; j += i) {
primes[j] = false;
}
}
}
// 输出范围内的素数
for (let num = start; num <= end; num++) {
if (primes[num]) {
console.log(num);
}
}
}
// 调用函数,输出1000到1200间的素数
findPrimes(1000, 1200);
```
6、编写一个程序,要求输出1000~1200以内的全部素数(质数)。javascript
在JavaScript中,你可以使用一种常见的算法——埃拉托斯特尼筛法(Sieve of Eratosthenes)来找出指定范围内的所有素数。以下是简单的步骤:
```javascript
function findPrimes(start, end) {
// 创建一个新的布尔数组,表示从start到end的所有数字是否为素数
const isPrime = new Array(end + 1).fill(true);
isPrime[0] = false;
isPrime[1] = false;
for (let i = 2; i * i <= end; i++) { // 只需检查到√end即可
if (isPrime[i]) {
// 将i的倍数标记为非素数(除了它本身)
for (let j = i * i; j <= end; j += i) {
isPrime[j] = false;
}
}
}
// 输出1000到1200之间的素数
for (let num = start; num <= end; num++) {
if (isPrime[num]) {
console.log(num);
}
}
}
// 调用函数输出1000到1200的素数
findPrimes(1000, 1200);
```
这个函数首先初始化一个布尔数组,然后通过循环逐渐排除合数(非素数),最后只打印出`true`对应的值,即素数。
阅读全文