指定範囲内の素数を表示するプログラム Javascipt
指定した範囲内の素数を表示する
範囲を指定してください。
指定範囲内の素数を表示するプログラムのコード
<label for="startNum">開始数:</label>
<input type="number" id="startNum" min="2" value="2">
<label for="endNum">終了数:</label>
<input type="number" id="endNum" min="2" value="20">
<button onclick="displayPrimeNumbers()">表示する</button>
<div id="primeNumbers"></div><label for="numPrimes">表示する素数の個数:</label>
<input type="number" id="numPrimes" min="1" value="10">
<button onclick="displayPrimeNumbers()">表示する</button>
<div id="primeNumbers"></div>
function isPrime(num) {
if (num <= 1) return false;
if (num <= 3) return true;
if (num % 2 === 0 || num % 3 === 0) return false;
let i = 5;
while (i * i <= num) {
if (num % i === 0 || num % (i + 2) === 0) return false;
i += 6;
}
return true;
}
function displayPrimeNumbers() {
let startNumInput = document.getElementById("startNum");
let endNumInput = document.getElementById("endNum");
let startNum = parseInt(startNumInput.value);
let endNum = parseInt(endNumInput.value);
let primes = [];
for (let num = startNum; num <= endNum; num++) {
if (isPrime(num)) {
primes.push(num);
}
}
let primeNumbersDiv = document.getElementById("primeNumbers");
if (primes.length > 0) {
primeNumbersDiv.innerHTML = "範囲内の素数: " + primes.join(", ");
} else {
primeNumbersDiv.innerHTML = "範囲内に素数はありません。";
}
}