■ このスレッドは過去ログ倉庫に格納されています
与えられた自然数nが素数であるか否かを判定する関数のプログラムを書け
- 1 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:50:56.592 ID:xJloPUnyd.net
- っていう課題が出たんだがどう書けばいいの
言語は問わん
- 2 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:52:23.150 ID:W5SpmtSpd.net
- プログラムやったことないんだが素数に規則性がないのに可能なのか?
- 3 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:52:45.813 ID:az53OvfPd.net
- 正しく判定しろとは言われてないから任意の数にTrue返す判定関数書けばいい
- 4 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:52:57.692 ID:/v1XBDvSd.net
- じゃあ日本語で
「与えられた自然数nが素数であるか否かを判定する関数のプログラム」
- 5 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:54:29.063 ID:wpgvUUS90.net
- 時間がかかるけど、2以上√n以下の全ての自然数で割って、どれで割っても余りが0にならなければ素数とすれば判定できるぞ
- 6 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 15:59:14.245 ID:QnVhndhtM.net
- n÷iのあまりを求めて、あまり0が1つの場合だけ素数
iは1〜nにしてforとか適当に繰り返しとけ
- 7 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:00:26.557 ID:o1/pMp9lM.net
- モンテカルロ探索
- 8 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:15:46.361 ID:4812IMhi0.net
- int work = 0;
関数(workに数字を手打ち);
double w1 = work;
double w2 = 0;
int flg = 0;
for(int i = 2 ; i < work ; i++){
w2 = w1 / i;
if( w2 が割り切れたら ){
flg = 1;
break;
}
}
if(flg == 1){
printf("%dは、約数ではない",work);
}else{
printf("%dは、約数である",work);
}
- 9 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:17:00.947 ID:VBEynkNz0.net
- >>8
肝心な部分が無いじゃんw
- 10 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:18:26.309 ID:4812IMhi0.net
- 割り切れたかの判定が思いつかない
52だとすると小数点だけ取り出して
その数が1よりも大きければ割り切れていないって感じなのかな?
- 11 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:19:18.644 ID:z8AUk1vL0.net
- Mathematica で実装する
入力を x とすると以下のようにかける
PrimeQ[x]
- 12 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:20:01.282 ID:4812IMhi0.net
- >>9
たぶん>>10のでいけると思うけど
動かしてみないとどういう結果になるかわかんねえ
あとintとかdoubleの最高値みたいなのを例外処理とかでいれとかないとだめな予感
何桁までできるのか知らんけど
- 13 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:20:33.179 ID:yT9vc2FW0.net
- 無理
- 14 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:21:40.740 ID:z8AUk1vL0.net
- 言語はなんでもいいんだからわざわざ低レベルな言語でやる必要はない
僕の解答が最もシンプルでかつ美しいでしょう
- 15 :以下、5ちゃんねるからVIPがお送りします:2017/11/28(火) 16:21:41.149 ID:4812IMhi0.net
- これintを100個くらい繋げてものすごい桁数まで判定できるようにしたら
教授に気にいられるんでないか?
あと数学知らないけどその数が素数なのかっていう数式があるんでないのか?
総レス数 44
11 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200