java 取余 小数_Java小数取余问题求助

java 取余 小数_Java小数取余问题求助2016-09-0101:19最佳答案楼上的全不明白楼主的意思,楼主要的是算法,不是程序你们懂吗!!!我只能说你们不懂什么叫真正的算法,你们只是计算机的傀儡,我看了你们回答非常生气,高校教出来的就是这种“人才”,连算法都不懂。还不如我一高中生。严重BS楼上的,尤其是说java语言的那位。我来告诉你这个问题用递推解决首先要你承认一个公式,我是习惯pascal语言的,c++怕写错,反正只是算法,你忍…

2016-09-01 01:19最佳答案

楼上的全不明白楼主的意思,楼主要的是算法,不是程序你们懂吗!!!

我只能说你们不懂什么叫真正的算法,你们只是计算机的傀儡,我看了你们回答非常生气,高校教出来的就是这种“人才”,连算法都不懂。还不如我一高中生。严重BS楼上的,尤其是说java语言的那位。

我来告诉你

这个问题用递推解决

首先要你承认一个公式,我是习惯pascal语言的,c++怕写错,反正只是算法,你忍一下。

不知道你要的算法是大整数对long取余还是大整数对大整数取余。

先说对long取余,这个简单

先承认两个公式:ab mod c=((a mod c)(b mod c)) mod c

(a+b) mod c=(a mod c+b mod c) mod c

然后递推,先算1 mod c,然后10 mod c ,100 mod c。。。用数组存一下,递推方法是10^n mod c=((10^(n-1) mod c)*10) m禒肌操可鬲玖叉雪常磨od c

再加,让k=0,

for a:=1 to l do

k:=(k+num[a]*exp10[a]) mod c

这样最后k就是结果。

补充:我不知道你说哪里耗时间,这个算法是位数的一次函数。

再说大整数对大整数取余,这个需要模仿你平常做的除法来做高精度除法,说明白了就是模拟除法,这个没什么好说的,只要你编程能力足够就写得出来,你可以上网上搜一下,我这就不写了,因为我也不能保证一次写对,因为写一个高精度除法需要高精度加法和乘法,代码稍微有点繁。

不bs楼上的了,我错了。lrj当然认识,见过他很多回了。我不是你说的那种被动接受的人,我们学校没有人懂,全部都是自学的,看到了你说用java解决很生气而己,楼主的意思是算法。

至于oier,我们都很崇拜lrj,市面上基本没有什么适合初学者的书,资来源是网络。

像很多高校,教出来的学计算机系的“程序员”根本不懂算法,导致很多程序效率低下,比如我曾看到一个ip地址数据库这位“牛”用o(n)的算法扫描找对应的ip地址,然后改成其它方法了居然还很高兴地说现在10几次就可以确定了。再比如我们的“老师”,从学校计算机系毕业,来了什么也不懂,最垃圾的模拟都不会,背包都不知道是啥,所以我内心里对一些人排斥。对不起。

但是有一点我不认同,不是大多数的oier都像你说的那样。

还有,就是我很不喜欢你的明白楼主是什么意思却不去回答而用java塘塞过去。

那不是狂妄,那是失望。这种问题竟然要等到我一个高中生来回答,而上面竟然又有人用java搪塞,我对现在算法普及程序感到非常的失望,很伤心。

一楼我不明白的就是你怎么估计?相当于你说你去买份饭没说怎么做,相当模糊,楼主要的是具体的算法。

今天的文章java 取余 小数_Java小数取余问题求助分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/11614.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注