Excelで素数かどうか判定する方法を紹介!

Excelで素数かどうか判定する方法を紹介!

Microsoft Excelを使用していて、セルに入力されている数値が素数なのかどうか判定したいと思ったことはありませんか?素数を覚えていない場合は、関数を使用して判定してみましょう。この記事では、Excelで素数かどうか判定する方法をご紹介しています。


目次[非表示]

  1. Excelで素数かどうか判定したい
  2. Excelで素数かどうか判定する方法

Excelで素数かどうか判定したい

Microsoft Excelで、数値が素数なのかどうか判定したいというシーンもあるかと思います。1とその数自身でのみしか割り切れない数の素数は暗記している方もいらっしゃるかと思いますが、おぼえていない場合は関数を使用して判定してみましょう。

Excelで素数かどうか判定する方法

B列に入力されている数字の一覧が素数であるかC列で判定する
それでは、Excelで素数かどうか判定する方法を説明します。画像の例では、B列に入力されている数字の一覧からC列に素数かどうかを判定して出力します。この判定には、「MIN関数」・「MOD関数」・「SEQUENCE関数」を使用します。

MIN関数とは「Minimum(読み方:ミニマム)」の略称で、引数で指定された値の中から最小値を求める関数です。

MOD関数とは「Modulus(読み方:モデュラス)」の略称で、係数・率といった意味を持っています。Excelにおいては「数値を除数で割った際の余りを算出する」といった計算を行います。数式は「=MOD(数値,除数)」です。

SEQUENCE(読み方:シークエンス)関数とは、連続した数値の配列を作成する関数です。数式は「=SEQUENCE(行,[列],[開始],[目盛り])」となります。SEQUENCE関数は2019年11月に実装された「スピル」によって登場した関数なので、Excel2019未満のバージョンでは使用することはできないという点には注意しましょう。

C2セルに「=MIN(MOD(B2,SEQUENCE(SQRT(B2),1,2)))」と入力
画像の例ではC2セルに「=MIN(MOD(B2,SEQUENCE(SQRT(B2),1,2)))」と入力してV2セルの平方根までの整数を生成して、MOD関数を併用してB2セルの値を整数で割った余りを求め、MIN関数で余りの中から最も小さい値を求めています。
オートフィルをかけることでC列に数式が入った
これで結果が出力されました。「0」であれば約数があるということになり素数ではなく、「1」であれば素数ということになります。数字の3は1と判定されたので、素数ということですね。あとはセルの右下のフィルハンドルで下方向に引っ張りオートフィルをかけることで、残りのセルにも数式が出力されますよ。

関連記事