スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


--/--/--(--)/--:--:--:コメント(-)|トラックバック(-)

素因数分解プログラム

なんとなく思いついたので、5分くらいで組んでみた。



#include<stdio.h>
int main(){
int a,b,c,d,z,x[50];
scanf("%d",&a);
b=2;z=0;
while(a!=1){
c=a%b;
if(c==0){x[z]=b;a=a/b;z++;}else{b++;}…1
}
for(d=0;d<z;d++){
printf("%d\n",x[d]);
}
}
return 0;
}



本当に速攻で組んだので、見やすさとか知らない。
それに、特定の場合にはおかしくなるかもしれない。
頭で組んだ、理論的には大丈夫だと思う。


欠点としては、素因数分解した際に、因数が50個以上になるのは分解できない
(因数で言葉あってるよな?)

1の部分だけ解説すればいいでしょう。

前行で出した、Cの余りが0ならaはbを因数に持つので、
bという数値を保存する(x[z]=bの部分)
それを上書きしてはいけないので次の空の変数を用意する(z++の部分。)
(a=a/bは言わなくてもわかるでしょう)

もし、c!=0なら、aはbを因数に持たないので、bの数を一つ大きくする。(b++;)


2011/05/22(日)/13:24:48:コメント(0)|トラックバック(0)
コメントの際の注意。
・宣伝・同じ内容の連投は削除等の対象。
・質問等は、しっかり考えてから行ってください。
 聞けば何でも教えてくれるというのは間違いです。
・コメントの返信方法が確立していないので、返せない場合があります(´・ω・`)
・http://とhttps://が禁止ワードとなっています。
 コメント本文のURL入力は頭のhを抜くなり、なんなりしてください
name:

title:

Mail_address:

URL:

comment:

パスワード:

管理者にだけ表示を許可する
トラックバックURL

プロフィール

猫と馬

Author:猫と馬
相互リンク希望の方はこちらにコメしてください
閲覧推奨環境
現在不明

フリーエリア

blogram投票ボタン
fc2ブログランキング 人気ブログランキングへ

↑から買い物をしてくれると管理人が喜びます

カテゴリ

リンク

月別アーカイブ

リンク・記事の紹介(引用)について。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。