
不太一样,
区别在于我们数学上的除法,参与运算的数字没有考虑到类型的
程序中的除法有考虑
比如
1/2
这个是整数除法,结果不是05,
而是0,即取了整数部分
10/2
这个才是05
如果想得到一个浮点数的结果,就要考虑让两个 *** 作数至少有一个是浮点数,强行乘一个10也是一个i办法
需要把参与运算的数据类型改为float或double
例:
int a=5,b=3;
float c=5/2;
//在这种情况下,虽然c是float,但是除号只根据它的被除数和除数来输出结果,此时"/"当作"整除"使用,结果是2
//正确方法是c=50/2或者c=(float)5/2;结果是25000000
在超高精度算法中,最难的就是除法了。(乘法,加法,减法,都要会)
模拟人工算法吧(大数都采用字符数组!)
做除法运算,首先至少要会乘法。
1234567895
运算如下:
95=5进4,58=0
加个位进位4
进4,以此类推
大数之间的比较,也要会,这个简单就不说了,如果这个也不会,那我没办法说下去了!
除法如下:
把数字当放入字符数组
假设:17346777412563/2365489
2365489(7位)
1734677(7位)
使用字符数组比较,如果是小于,那么采用17346777(8位)
一然后23654899=的结果跟17346777,如果大于就23654898依次类推直到小于。求得结果的第一位了。
然后17346777-2365489x=余数跟(17346777后一位)4组合,看是否大于2365489,大于就
进入一步骤方式运算。小于的话,结果的第二位就是0。
大致思路讲了,只要中间思路分析清楚,基本上不会有多大问题。总之,模拟人工。
这样的话,不管多大的数字之间的除法都OK的!
思路不懂可以来问我,如果,要我写代码,就别找我了
以上就是关于C语言中除法运算符“/”与数学中的运算符“÷”的用法和功能完全一样吗全部的内容,包括:C语言中除法运算符“/”与数学中的运算符“÷”的用法和功能完全一样吗、C语言除法、怎样勇C语言编一个大数除法程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)