当我们用C++(或其他编程语言)进行乘除混合运算的时候,可交替计算乘除法,以此来减小中间值的大小,防止溢出。
例如:(51*50*49*48)/(4*3*2*1),可写成i=51,j=4,计算i/j,然后i--,j--,再把每次循环的结果乘在一起。
假如分子或者分母的计算结果很大,这样做可以防止中间值超出变量的表示范围。
本文介绍了一种在C++中进行乘除混合运算时的优化方法,通过交替计算乘除法来减小中间值的大小,有效防止了数值溢出问题。
当我们用C++(或其他编程语言)进行乘除混合运算的时候,可交替计算乘除法,以此来减小中间值的大小,防止溢出。
例如:(51*50*49*48)/(4*3*2*1),可写成i=51,j=4,计算i/j,然后i--,j--,再把每次循环的结果乘在一起。
假如分子或者分母的计算结果很大,这样做可以防止中间值超出变量的表示范围。
2834
3795

被折叠的 条评论
为什么被折叠?