おはようございます。
そして、
新年あけましておめでとうございます。
今日は1月1日。
20190101です。
今度こそ素数!
かと思いきや。
17*137*8669=20190101
うーん。
奥が深いね。
ということで。
素数かどうかを判定するプログラムを。
書くのはめんどうだから。
ちょっとコピペ。
そうね。
みんな聞いたことあるJava!
System.out.println("素数判定プログラム"); int v = 123; System.out.println("入力された数字は『" + v + "』です"); if (v < 2) { System.out.println("2より小さい数字が入力されました"); } else if (v == 2) { System.out.println(v + "は素数です"); } else { boolean issosu = true; for (int u = 2; u < v; u++) { if (v % u == 0) { is = false; } } if (isSosu) { System.out.println(v + "は素数です"); } else { System.out.println(v + "は素数ではないです"); } }
これで、素数判定できますね。
Java分かりにくいって?
そうね。
Vbaが得意でしたので。
VBAで!
Sub 素数を求める() Dim i As Long Dim j As Long Dim m As Long Dim p As Long i = 1 j = 1 p = 2 Do If 素数判定(p) Then Cells(i, j) = p i = i + 1 If i > Rows.Count Then i = 1 j = j + 1 End If End If p = p + 1 Loop End Sub
Function 素数判定(ByVal p As Long) As Boolean 素数判定 = False Dim m As Long If p = 2 Then Exit Function For m = 2 To Int(Sqr(p)) If p Mod m = 0 Then Exit Function End If Next 素数判定 = True End Function
と、まぁ、こんな感じ。
さぁやってみよう!
レッツプログラミング!
ご興味のある方はあんのまで!