素数を配列に読み込みたい

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
田中

素数を配列に読み込みたい

#1

投稿記事 by 田中 » 12年前

10000以下の素数をprintfを使って書き出すプログラムを作ったのですが、今度はその素数を配列に読み込みたいです(scanfで入力してもらうのではなく)。
c言語初心者で自分なりにいろいろやってみたのですが分かりません。お願いします。

ぬっち
記事: 105
登録日時: 13年前
連絡を取る:

Re: 素数を配列に読み込みたい

#2

投稿記事 by ぬっち » 12年前

そこまでできているのでしたら、後は配列に代入していけばよいのでは?
それとも読み込むというのは、素数の書かれたファイルからということでしょうか?

もう少し情報をいただけると助かります。

初級者
記事: 200
登録日時: 13年前

Re: 素数を配列に読み込みたい

#3

投稿記事 by 初級者 » 12年前

配列に読み込む、ということが何を意味するのか、よくわかりません。

配列から読み込む
配列に書き込む
ならば、わかります。

田中

Re: 素数を配列に読み込みたい

#4

投稿記事 by 田中 » 12年前

for(i=1;i<=10000;i++){
a=0;
for(j=1;j<=i;j++){
if(i%j==0)
a++;
}
if(a==2)
i=sosuu[k];
k++;
}


これでsosuuという配列に読み込めていますか?

アバター
bitter_fox
記事: 607
登録日時: 13年前
住所: 大阪府

Re: 素数を配列に読み込みたい

#5

投稿記事 by bitter_fox » 12年前

田中 さんが書きました:10000以下の素数をprintfを使って書き出すプログラムを作ったのですが、今度はその素数を配列に読み込みたいです(scanfで入力してもらうのではなく)。
c言語初心者で自分なりにいろいろやってみたのですが分かりません。お願いします。
では、10000以下の素数をprintfを使って書き出すプログラムをベースに書き換えたらどうでしょうか?

そのためにはまず10000以下の素数をprintfを使って書き出すプログラムのソースをここに掲示してください。

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: 素数を配列に読み込みたい

#6

投稿記事 by beatle » 12年前

ソースコードは code タグで囲みましょう。
今回は代わりに僕が整形しておきますが、次回からはご自分で整形してください。

コード:

for(i=1;i<=10000;i++){
	a=0;
	for(j=1;j<=i;j++){
		if(i%j==0)
			a++;
	}
	if(a==2) 
		i=sosuu[k];
	k++;
}
さて、i=sosuu[k];という文はどんな動作でしょうか。iの値をsosuu[k]に書きこむのか、sosuu[k]の値をiに書きこむのか。どっちだと思いますか?

田中

Re: 素数を配列に読み込みたい

#7

投稿記事 by 田中 » 12年前

>>bitter_foxさん

コード:

#include <stdio.h>

int main()
{
  int i,j,a,sosuu[10000];

for(i=1;i<=10000;i++){
     a=0;
for(j=1;j<=i;j++){
  if(i%j==0)
     a++;
}
if(a==2) 
  printf("%d ",i);
}}
何度もすみません。
これで素数を表示しました。


>>beatleさん

sosuuにiの値を入れていったつもりだったんですけど・・・

アバター
bitter_fox
記事: 607
登録日時: 13年前
住所: 大阪府

Re: 素数を配列に読み込みたい

#8

投稿記事 by bitter_fox » 12年前

田中 さんが書きました: sosuuにiの値を入れていったつもりだったんですけど・・・

コード:

for(i=1;i<=10000;i++){
    a=0;
    if(a==2) 
        i=sosuu[k];
    k++;
}
もしそうだとするとa = 0;は0にaの値を代入することになってしまいますね。

あと、k++が実行されるのはいつでしょうか?
それから、kはちゃんと初期化してありますよね?

田中

Re: 素数を配列に読み込みたい

#9

投稿記事 by 田中 » 12年前

間違いに気づきました。
出来ました!ありがとうございました。><

閉鎖

“C言語何でも質問掲示板” へ戻る