このページについて
このページでは入力として受け取った数値が素数かどうかを判定する、ただそれだけのことをするページです。
3以下の数値が入力された際にメッセージを出すようにしました。
仕組み
このページではHTMLとJavascriptを使用して素数かどうかを判定しています。
そもそも素数ですが、「1とその数自身でのみ割り切れる数」の事を指します。つまり3は1と3で割る場合は余りが0できっちり割り切れますが、2の場合のみ1.5という結果になります。先ほどの素数の条件を確認してみると、2の時だけ中途半端な数値が出ているので「3は素数」ということになります。
逆に4の場合、1と2と4で割り切れて余りが0で、3で割った時のみ1.333となります。しかし素数の条件と照らし合わせると、2で割り切れている時点で素数では無いことがわかります。
26の場合は2で割ると13、3で割ると12、その逆もあるので13で割ると2、12で割ると3という結果になります。当然ながら素数ではありません。
このページでは受け取った数をループで1から10まで順番に計算し、結果が0の時だけ特定の変数に1加算していきます。そしてカウンターが3になった時点で計算がたとえ途中でも終了し、素数では無いという結果を出力します。逆に10までの計算過程で割り切れる数が出現しなかった場合、素数であるという結果が出てきます。
ちなみに10を上限とした理由ですが、シンプルに計算処理を早くするためです。仮にJavascriptの数値型の上限である9007199254740991を入力された場合、上限まで計算していると流石に負荷が半端ないですよね。10までというのは中には2や3で割り切れる6みたいな数値もあれば、5で割り切れる25や50みたいな数値もあります。81ですら9で割り切れるので、そういうのも含めての上限10です。
素数判定
見ての通りですね。数値を入力し、調べるボタンをクリックすれば結果がその辺に出てきます。
上でも書いた通り、数値入力の上限値は9007199254740991に設定してあります。最小値は3です。1は例外であり、厳密には素数ではありません。そして2は1と2しか計算対象が居ないので素数です。3は一応1と2と3が計算対象となるので、最小値を3としました。
当初は計算結果をずらーっと表示する仕組みも考えたのですが、計算回数が10回に設定して途中で終了する仕組みをとったくせにそっちは表示するんかーいって思ったのでやめときました。
さらに数値入力に別のボタンを使用して一気に1000とか入力できるようにしようかとも思ったのですが、このページにそこまで人が来て利便性を求めるのかって思ったのでやめときました。
- HTMLの基礎
- HTMLってどんな言語?書き方やHTMLファイルの作成方法などを解説。
- HTMLタグで押さえておきたいポイント3選
- HTMLタグを使う上で必ず押さえておいてほしいポイント3つの解説です。
- HTMLタグと属性一覧
- HTMLタグと属性の一覧です。
- tableタグ生成ページ
- tableタグの基本形を生成できるページです。
- ulタグ・olタグ生成ページ
- ulタグとolタグの基本形を生成できるページです。