JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで素数判定を行うカスタム関数の作成方法

JavaScriptでは、独自のカスタム関数を作成することで、ある数値が素数かどうかを簡単に判定できます。素数とは、1とその数自身以外に約数を持たない、1より大きい自然数のことです(例:2、3、5、7、11、13など)。

この記事では、実際に動作するサンプルコードを通じて、素数判定関数の作り方を解説します。

サンプルコード

以下が、素数判定を行うカスタム関数のコード例です。

function checkNumberIsPrime(number) {
    var flag = false;
    for (start = 2; start < number / 2; start++) {
        if (number % start === 0) {
            flag = false;
            break;
        }
        else {
            flag = true;
        }
    }
    return flag;
}
var number = 11;
if (checkNumberIsPrime(number) == true) {
    console.log("The number is prime");
} else {
    console.log("The number is not prime");
}

プログラムの実行方法

上記のプログラムを実行するには、Node.jsを使って次のコマンドを入力します。

node fileName.js

ここでは、ファイル名を「demo230.js」として保存したものとします。

実行結果

実行すると、以下のような出力が得られます。

PS C:\Users\Amit\JavaScript-code> node demo230.js
The number is prime

コードの仕組み

この関数は、2から「対象の数値の半分」まで順番に割り切れるかどうかをチェックしています。途中で一度でも割り切れた場合は、その数は素数ではないため、break文でループを抜けてfalseを返します。最後まで割り切れなければ、その数は素数であると判断され、trueが返されます。

より効率的な改善案

実は、約数のチェックは「数値の平方根」まで行えば十分です。ループ条件をstart <= Math.sqrt(number)に変更することで、大きな数値でも処理速度を大幅に向上させることができます。また、2や3などの小さい素数も正しく判定できるよう、事前に条件分岐を追加しておくと、より堅牢な関数になります。

  1. JavaScriptでカスタム画像スライダーを作成する方法【初心者向け解説付き】

    Webサイトに動きを加える定番パーツのひとつが「画像スライダー(カルーセル)」です。ライブラリを使わなくても、HTML・CSS・JavaScriptの基本だけで、前後ボタンとナビゲーションドット付きのカスタムスライダーを簡単に作ることができます。この記事では、実際に動作する完全なサンプルコードを紹介しながら、それぞれの仕組みをわかりやすく解説します。完成形のサンプルコード以下のコードをそのままHTMLファイルとして保存し、ブラウザで開くと画像スライダーが動作します。<!DOCTYPE html> <html> <head> <meta name=&qu

  2. JavaScriptのNumber()関数とは?使い方とサンプルコードを解説

    JavaScriptのNumber()関数は、引数として渡された値やオブジェクトを、それに対応する数値へ変換するための関数です。真偽値や文字列型の数字、さらにはDateオブジェクトなども数値に変換できるため、データ型の変換処理において非常に便利な組み込み関数の一つです。例えば、Number(true)は「1」、Number(false)は「0」を返します。また、数字のみで構成された文字列「149」を渡せば数値の149に変換され、new Date()で生成した日付オブジェクトを渡すと、1970年1月1日からの経過ミリ秒数が返されます。以下に、Number()関数の動作を確認できるサンプルコードを