![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.5ベストアンサー
- 回答日時:
色々間違ってました。
正しくは、int main(void){
int i,j;
int isprime[1000];
//最初はすべての数が素数だと思う
for(i=0;i<=1000;i++){
isprime[i]=1;
}
//誤動作しないようにする。
isprime[0]=isprime[1]=0;
//2からはじめる
for(i=2;i<=1000;i++){
if(isprime[i]==1){
for(j=2*i;j<=1000;j+=i){
isprime[j]=0;
}
}
}
//双子素数をプリントする
for(i=2;i<=1000;i++){
if(isprime[i-2]==1 && isprime[i]==1){
print("(%d,%d)",i-2,i);
}
}
}
で、結果は、
(3,5)(5,7)(11,13)(17,19)(29,31)(41,43)(59,61)(71,73)(101,103)(107,109)(137,139)(149,151)(179,181)(191,193)(197,199)(227,229)(239,241)(269,271)(281,283)(311,313)
(347,349)(419,421)(431,433)(461,463)(521,523)(569,571)(599,601)(617,619)(641,643)(659,661)(809,811)(821,823)(827,829)(857,859)(881,883)
でした。
お礼がとても遅れてしまい、本当に申し訳ありません。
プログラムリストを載せて頂いた上訂正までして頂いて、本当にありがとうございました。
遅ればせながら、良回答にさせていただきます。
No.4
- 回答日時:
エラトステネスのふるいについては、
http://www.hokuriku.ne.jp/fukiyo/math-obe/eratos …
に書いてあります。プログラムでかくなら、1000個の配列を作って、
#include <stdio.h>
int main(void){
int isprime[1000];
//最初はすべての数が素数だと思う
for(i=0;i<=1000;i++){
isprime[i]=1;
}
//誤動作しないようにする。
isprime[0]=isprime[1]=0;
//2からはじめる
for(i=2;i<=1000;i++){
if(isprime[i]==1){
for(j=i;j<=1000;j+=i){
isprime[j]=0;
}
}
}
//双子素数をプリントする
for(i=2;i<=1000;i++){
if(isprime[i-2]==1 && isprime[i]==1){
print("(%d,%d)",i-2,i);
}
}
}
で行くと思います。未チェックですが。
ありがとうございました!!!エラトステネスのふるいについてよく分かりました。本当に感謝しています。
わざわざプログラムリストまで載せて下さって、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 方程式 √x=-1 の解 2 2022/07/08 17:26
- その他(プログラミング・Web制作) ロボットの作り方を教えて下さい! なにも知らない素人です。 全て自作する場合、どうすればよいでしょう 6 2022/12/18 01:25
- C言語・C++・C# C言語 3 2022/10/04 15:07
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- 数学 複素数についての質問です。 z=(1+i)^iの時の主値の求め方を教えて頂きたいです。 また、範囲は 2 2022/07/22 19:29
- 化学 ふるいを通った後の粒子の粒径分布 2 2023/08/08 09:55
- その他(恋愛相談) 脈アリ判断してくださいー 3 2022/04/27 12:31
- 数学 nは正の整数であり、偶数。 n(n+1)(n+2)(n+3)は素因数が3つ。 nを求めよ。 という問 8 2022/09/26 18:15
- 物理学 質量って何ですか。 7 2023/05/14 21:37
- 数学 整数問題 10 素数再び 3 2023/04/26 15:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
数字列を3桁ごとにカンマで区切...
-
複数桁10進数の*桁目だけを抽出...
-
C言語 エラーの原因がわからな...
-
【C++】関数ポインタの使い方
-
(int *)の意味
-
C言語のサイコロシミュレート
-
ラップ関数とはどんなものですか?
-
c++でテンプレートのコードでわ...
-
#define _CRT_SECURE_NO_WARNIN...
-
c言語の配列を使ってサイコロを...
-
(マルチスレッド)_beginthrea...
-
実数の整数部,小数部の取得
-
入力を待たずにstdinの監視をし...
-
C言語で、数値の桁数を求めるに...
-
「{ } で囲むだけ」は正しい?
-
構造体の勉強中です 合計点の高...
-
比較回数と交換回数表示について
-
課題でつまってます・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「指定されたキャストは有効で...
-
C言語での引数の省略方法
-
#define _CRT_SECURE_NO_WARNIN...
-
複数桁10進数の*桁目だけを抽出...
-
へんな現象
-
【C++】関数ポインタの使い方
-
C言語 エラーの原因がわからな...
-
if と配列の組み合わせ
-
C言語での奇数の和
-
C言語 配列と関数の練習問題
-
ラップ関数とはどんなものですか?
-
(int *)の意味
-
C言語
-
実数の整数部,小数部の取得
-
足して100になるような乱数のア...
-
卒業研究でよく分からないとこ...
-
数字列を3桁ごとにカンマで区切...
-
c言語
-
std::set<int> で、ある値が何...
-
比較回数と交換回数表示について
おすすめ情報