寻求计算机高手解决因数分解问题
朋友你好!我不是学计算机的,而且对计算机以及计算机编程一窍不通。我只是个数学爱好者,主要是对基础数论方面比较感兴趣。此次上网发帖的目的主要是寻找一位计算机高手来帮我实现------把我的质因数分解理论应用在计算机上。具体说明如下:
一、质因数分解方法说明:
我们知道一个数能否被2、3、5整除一眼就能看出,而不被2、3、5整除的数,其被3除后不是余1就必然余2。我的质因数分解方法就是对被3除后不是余1就必然余2的数进行完全分解方法。其中对被3除后余1的数且尾数分别是1、3、7、9的数分别总结出8个公式。对被3除后余2的数且尾数分别是1、3、7、9的数分别总结出8个公式。
二、我的质因数分解方法应用说明
我的质因数分解理论已在十多年前中科院《科学新闻》周刊发表过。而且论证方法是用国内数论专家否论定过的基础数学方法完成的(专家认为在基础数学中无法实现对质因数的完全分解)。其思路我已在帖中说明,所以我只对质因数分解方法应用作以说明。
1、我的质因数分解方法是对质因数分解的终结者,无论任何数(素数除外)都能把它分解开。即不受计算位数的限制。
2、运用它能把所有的素数找出来(只取决于计算机而不是方法问题),并能按顺序排列素数。
3、运算速度方面我不能枉加评论,但我为了验证我这套理论的准确性和快速性,我和同学一起用FOX编写了一个简单程序(因为计算机知识太浅薄不知什么原因只能计算14位数)。经反复验算不但准确无误,而且速度特快,一般运算14位数在数十秒内完成(若在第一个公式中算出速度在几秒内完成,若循环到第八个公式中算出速度在1分钟内完成)。据报道日本富士通公司2006年9月最新研制出一台用于分解质因数的专用计算机,它分解一个128位数用了一个月时间。而若能把我的方法运用到计算机中。运算速度决不会是一个月,应该是几天内就可完成。
三、编程说明:(只列出一个公式,其他公式雷同。)
第一、大众应用程序编制说明:
1、设X为一个大合数。且几个变量之间的关系为:A、 N=(X-1)/6 B、 T=1、2、3 ......自然数(计算时随自然数递增循环)
2、判断X的尾数是否是偶数或5,若是偶数或5,则2或5就是这个数的一个质数。若不是则进行第三步。
3、判断X是否能被3整除,若能被整除则3就是这个数的一个质数。若不被整除则判断X除3后余1或2。
4、若X除3余1或2则进行第五步。(第五步只说明一个公式的用法。其他公式雷同)
5、若X除3余1且X的尾数为1,则:A、L=5T-4B、AT=(L+1)*(6L+1)+L
6、运算:在T=1、2、3 ......自然数时运算(AT-N)/(5*(6L+1))能否被整除,若T=n时被整除,则(6L+L)和X/(6L+1)就分别是X的两个因数(如果X是两个质数的乘积,则(6L+1)或X/(6L+1)就分别是X的两个质因数)。若X为多个质因数的乘积,则对(6L+L)和X/(6L+1)分别再进行以上步逐分解,直至最终分解到全部不能被整除,这些不能被整除的数都是质数了。若运算到T=n且AT大于等于N时。则转入下一个公式重新进行运算。(每次运算最少循环使用1个公式,最多循环8个公式。)
第二、对大质数乘积而形成的合数编程说明:
若要快速分解一个大质数的乘积,我们在设置T时按位数分段取值,即估计出(6L+1)位数的多少来取T值(可设计成T在不同取值范围内的程序)。这样将大大缩短运算时间。
如果你有兴趣且能实现编程请与我联系
QQ:358267699 邮箱:358267699QQ.COM
呵呵,原来是数论啊
原来是对数论有兴趣的人啊我们也知道2 3 5很好判断,
我越来越相信自然数是由神创造出来的了,
你看,我们不也是由神创造出来的吗
我们的手指不是也有10个吗
计算机只有两个指头,当然不可能数得过我们啦
幸好,不然RSA不就没办法了吗???
计算机科学不也完了吗
回复 楼主 LUPIAOYING 的帖子
要判断一个很大的数是否为合数还是比较麻烦的,因为一般语言不能处理1000000000000/2这个简单的运算,因为现在语言表示整数的时候一般用32位,也就是最多能表示2^32=1024*1024*1024*4约等于4000,000,000. 超过这么大数之后,需要重新编写长整数的运算. 一般人都没有这个兴趣,因为无法发文章. 国内在20年前有个人用Fortran语言处理超长数据的书.我记得当时书上的作者有个黑框,也就是书没有出来之前人就已经死了.
页:
[1]