
高1です。
素数が何%くらいあるかを調べてみようと思い、次のようなBasicプログラムを作りました。
--------------------------------------------------------
100 cls:count=1:print 2;" ";100;"%";" ";count
110 for i=3 to 10000000
120 n=i
130 if (n - int(n/2)*2) = 0 then goto 220
140 for j = 3 to sqr(n) step 2
150 if (n - j * int(n/j) ) = 0 then goto 220
160 end if
170 next j
180 count=count + 1
190 p = count*100 / (n - 1)
200 percent = (int(p * 10))/10
210 print n;" ";percent;" ";"%";" ";count
220 next i
230 end
--------------------------------------------------------
【各行の意味】
100 2は素数
110 3から一千万まで調べる
130 偶数は除外
140~ 素数判定(自然数nが√n以下のすべての数で割りきれなければ、nは素数である、を利用)
180 素数の個数をカウントする
190~ 素数が何%あるかを少数第一位まで求める。少数第二位以下は切り捨て。
210 素数、%、素数の個数 を表示
--------------------------------------------------------
【結果】
千までに素数は168個、16.8%
一万までに素数は1229個、12.3%
十万までに素数は9592個、9.5%
百万までに素数は78498個、7.8%
一千万までに素数は664579個、6.6%
--------------------------------------------------------
そこで質問ですが、
1.素数の割合は収束する傾向にあると言えるでしょうか?
2.プログラムに間違いがありましたら、教えていただけないでしょうか。
3.素数の割合に関するわかりやすい本(高校生でも理解できるようなもの)などがありましたら、教えていただけないでしょうか。
ちなみに、これは学校の宿題や課題ではありません。純粋に個人的な興味で調べたものですが、何か結論みたいなものが導けたら来年の自由研究に出してみたいと思っています。
使用機種:Mac
使用ソフト:chipmunk basic(フリーソフト)
機種が非力なので1億や10億といった計算はやっていません。
No.1ベストアンサー
- 回答日時:
>2.プログラムに間違いがありましたら、教えていただけないでしょうか。
プログラムに間違いは無さそうです。
>1.素数の割合は収束する傾向にあると言えるでしょうか?
これを探ることが自由研究のテーマとなるかどうかですね。
キーワードは、「素数定理」の「コンピュータ」による「数値解析」になりますが、
・コンピュータには扱える数に上限がある
今回は、110 for i=3 to 10000000 の 10000000 です。おそらく21億くらいで上限になると思います。
・上限があるということはその数に対して収束する
ということを抑えてください。
無限大まで考えるためには、数学IIにはlim(極限)という考えがあり、この問題を解決するにはlimが必要です。
1)この問題を取っ掛かりとして素数定理の歴史を調べる。
2)コンピュータでプログラミングしてそれぞれの方法論に対して数値解析をして、誤差を分析する。
というテーマも考えられます。
回答をありがとうございます。
素数定理というのがあるのですね。初めて知りました。私が素数について調べてみようと思ったのは、私が好きな森博嗣氏の本に「素数って平均すると、いくつに1つあるか」と書いてあったからです。元工学部の助教授の先生がわからないのだから、私にわかるはずはありませんが、およそどのくらいかなと思って調べてみました。私の予想では10個に1個くらいかなと思いましたが、意外に少ないなという印象でした。
教えていただいた、「数値分析をして、誤差を分析する」というのが面白そうなので、調べてやってみようと思います。
No.4
- 回答日時:
素数は
1、2,3,5,7,11・・・・・
です。ここで、3,5,7に注目です。
3+(N-1)x2=3
3+(N-1)x2=5
3+(N-1x2=7
つまり、初項3で階差2の等差数列であることがわかる。
No.3
- 回答日時:
素数定理について調べてみたのなら、
x 以下の素数の個数を π(x) 個として
π(x) ~ x/(log x) と書いてあるのを見かけたと思います。
ここで、f(x) ~ g(x) というのは、
lim[x→∞] f(x)/g(x) = 1 という程の意味です。
この式から、lim[x→∞] π(x)/x = 0 が従います。
1 から x までの自然数に含まれる素数の割合 π(x)/x は、
x が大きくなると、いくらでも小さくなってゆき、
x が無限に大きくなれば、0 とみなせる ということです。
質問の答えは、「ほとんど 0 %」かな。
調べる x の範囲がたった一千万や十億くらいまででは、
x が無限に大きくなったときの様子は見えてこないでしょう。
パソコンでの実験よりも、理論的な考察が必要になりそうです。
とりあえず、高校生向けの数2数3を勉強してください。
「極限」とは何かの雰囲気が掴めれば、少し上級向けの本も
読めるようになるでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
∞/0って不定形ですか?∞ですか...
-
数学の問題です
-
デルタ関数
-
単調増加
-
シグマの問題なのですが。
-
収束性の問題です。優級数定理...
-
f(x)=e^(-ax+b) のフーリエ変換...
-
ノルムでは収束するが、各点で...
-
極限の問題
-
いんてしぐま
-
ラプラス変換後のsの意味って何...
-
無限大の0乗は、1で正しいですか?
-
数学3の極限でSnとanの極限をそ...
-
lim(An+Bn)=limAn+limBn の証明
-
数学について質問です!
-
無限級数収束判定
-
信用創造の計算方法の仕方について
-
一様収束するか判定してほしいです
-
何時間 何分 何秒を記号で表...
-
数学で出てくる十分性と必要性...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
おすすめ情報