素数を求めるプログラムについて – プログラミング – Home

素数を求めるプログラムについて
 
通知
すべてクリア

素数を求めるプログラムについて


りく
 りく
(@りく)
ゲスト
結合: 21年前
投稿: 11
Topic starter  

好きな数字(n)を1つ入力し1からnまでの素数を求めるといった感じのをプログラムに慣
れるために作っているのですがうまくいきません。皆様には簡単すぎる話題で申し訳な
いのですがどうか助言をお願いします。
ちなみに私はこんな風にかいています。
#include<stdio.h>
main()
{
int a,i,n;
scanf(%d,&n);
printf(素数\n,&n);
for(i=1;i<=n;i++){
if(a==i/n||a==i/1);
if(!! a==1<i);
a=i;
printf(%d\n,a);
}
}
よろしくお願いいたします。


引用解決済
トピックタグ
アイススケーター
 アイススケーター
(@アイススケーター)
ゲスト
結合: 23年前
投稿: 280
 

 素数を求めるには、まず何をすればよいかを考えましょう。

 検査する値をnとた場合、2~[ルートn]の整数で割り切れなかったら素数となります。
またこの検査を少なくしようとすれば(ロジックが少し複雑になる)2~[ルートn]の素数
で割り切れなかったら素数となります。

 どちらを選ぶかはりくさんの自由です。

 さて、りくさんのプログラムを見ていると、forループが1つしかありません。最低でも
2つのforループが必要でしょう。

 あと下記のロジックが何をしたいのかまったく不明です。

if(a==i/n||a==i/1);
a==i/nではnがaになるまで0でしょう
 a==i/1はa==iで良いはず

if(!! a==1<i);
 こんなロジック見たことありません。

a=i;

 ということで、りくさんのプログラムは解析不能の状態です。

 もし、りくさんが初心者で、他人に教えてもらいたい場合は、最低限のコメントを入れてく
ださい。

 多分授業の宿題でしょうが、プログラムの初心者のフォローをする方も大変なんですよ。

参考:割り切れるかどうかは %(余り)を利用してみて下さい。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました