ごらくらいふ

プログラミングしたりゲームしたり

書き捨てストレッチ:素数を判定するツール

「もう6月も終わるし、なんかネタ出さないとな」とデレステのイベントを走ってたら素数っぽい数字が見えた。

そういえば素数判定するコードは書けるはずだけど、すぐ参照できる場所にコードがないな…?

書いてみた

書き捨てだから(免罪符)深いこと考えない実装をしてみた。

/**
 * 素数判定スクリプト
 * @param {number} value 素数判定したい数値。0以上の整数を期待する。
 * @return {boolean} 素数であれば `true`。
 */
function isPrimeNumber(value) {
  if (value < 2) {
    return false;
  }
  let element = 2;
  while (element * element <= value) {
    if (value % element === 0) {
      return false;
    }
    element += 1;
  }
  return true;
}

Webツールとしてはいつもの GitHubホスティング

yajamon.github.io

factor コマンド使えば良い

こんな実装し~なくても。ってやつ。

factor というコマンドはパラメータの値を素因数分解してくれる。 この結果を確認すれば、素数か判断できる。

factor 180007
# 180007: 180007  
factor 10
# 10: 2 5

チラシの裏

  • 素数は英語で「prime number」というらしい
  • 合成数は英語で「composite number」というらしい

新和英大辞典 第5版 研究社より