素因数分解  - Brute force method

Brute force methodという方法で、素因数分解をするプログラムです。
ブルートフォースという名前のとおり、力ずくで強引な方法ですが、順番に割り算をするよりは効率よく素因数分解できます。

Brute force method の詳細は『数学者の密室』12章 素因数分解アルゴリズム を見てください。




このプログラムでは、31までの素数で割り、それ以降は、30m+7, 30m+11, 30m+13, 30m+17, 30m+19, 30m+23, 30m+29, 30m+31
の数で割っています。素数でない数でも割ることになりますが、単純なコードよりも効率良く素因数分解できます。
ただ、大きな素数が含まれる数に対しては、無意味(?)な試し割りが何べんも行われるため、それほど効率が良いとは言えません。


■Factorize.cs
■MainPage.xaml.cs

 
■MainPage.xaml