在 JavaScript 中尋找兩個具有特定數字間隔的質數
問題
我們需要編寫一個 JavaScript 函式,該函式獲取一個數字、作為第一個引數的間隔以及作為第二個引數的兩個數字的範圍陣列。我們的函式應返回所有此類素數對的陣列,這些陣列的絕對差為 gap 並落在指定範圍內。
示例
以下為程式碼 -
const gap = 4;
const range = [20, 200];
const primesInRange = (gap, [left, right]) => {
const isPrime = num => {
for(let i = 2; i < num; i++){
if(num % i === 0){
return false;
};
};
return true;
};
const primes = [];
const res = [];
for(let i = left; i < right; i++){
if(isPrime(i)){
primes.push(i);
};
};
let currentNum = primes[0];
for(let j = 1; j < primes.length; j++){
if(primes[j] - currentNum === gap){
res.push(currentNum, primes[j]);
return res;
}else{
currentNum = primes[j];
};
};
return null;
};
console.log(primesInRange(gap, range));輸出
以下是控制檯輸出 -
[37, 41]
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP