質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

1回答

1095閲覧

素数の求め方について

ko21

総合スコア3

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2022/06/30 09:25

エラトステネスのふるいという方法を使って、100までの整数から素数を求めるプログラムを書きたいです。①~③にはどのようなコードを書けばプログラムを完成させられるでしょうか?
回答よろしくお願いします。

Sub b() Dim Num() As Integer Dim Max As Integer Dim a As Integer '素数だった数を数える変数 Dim n As Integer Dim j As Integer Cells.colums(1).Clear Max = 100 ReDim Num(2 To 100) As Integer For n = 0 To Max 'すべてが素数であるとする Num(n) = 0 Next n For n = 2 To Max '素数を見つける If  ①  Then a = ② Cells(a, 1) = ③ For j = n ^ 2 To Max Step n ’素数の倍数を素数でないと判定する Num(j) = 1 Next j End If Next n End Sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kikukiku

2022/06/30 10:00

エラトステネスのふるいという方法を説明すべきではないでしょうか? ※回答者がその方法を調べる必要がなくなり、回答率が上がります。 ①~③は自分自身で書いてみて、動作させてみて、うまく動かないようでしたら、 その動かない部分を質問した方が良いと思います。 それともVBAそのものがわからないということでしょうか? そうであれば、まず質問する前に、VBAについて勉強するところから学習した方が良いと思います。
Zuishin

2022/06/30 12:52 編集

小学校五年生の算数で習うエラトステネスの篩くらい誰でも知っているのでそれはいいとして、宿題をやらせたいなら宿題代行サービスに頼んでください。
arcxor

2022/06/30 11:16

①~③ にコードを追加しても、このプログラムには不備があるため動作しません。
guest

回答1

0

ベストアンサー

vba

1Sub b() 2 Dim Num() As Integer 3 Dim Max As Integer 4 Dim a As Integer '素数だった数を数える変数 5 Dim n As Integer 6 Dim j As Integer 7 Cells.Columns(1).Clear 8 9 Max = 100 10 11 ReDim Num(2 To 100) As Integer 12 13 For n = 2 To Max 'すべてが素数であるとする 14 Num(n) = 0 15 Next n 16 17 For n = 2 To Max '素数を見つける 18 If Num(n) = 0 Then 19 a = a + 1 20 Cells(a, 1) = n 21 22 For j = n ^ 2 To Max Step n '素数の倍数を素数でないと判定する 23 Num(j) = 1 24 Next j 25 End If 26 Next n 27 28End Sub

投稿2022/06/30 11:22

hatena19

総合スコア33699

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問