Tag: 除法

检查一个数字是否可以被3整除

我需要find一个数字是否可以被3整除而不使用% , /或* 。 给出的提示是使用atoi()函数。 任何想法如何做到这一点?

使用常数整数除法器进行高效的浮点除法

最近的一个问题 ,是不是允许编译器用浮点乘法来取代浮点运算,这就激励我提出这个问题。 在严格的要求下,代码转换后的结果应该与实际的除法运算按位相同,但对于二进制IEEE-754algorithm来说,对于二的幂因子是可能的。 只要除数的倒数是可以代表的,乘以除数的倒数即可得出与该除数相同的结果。 例如,乘以0.5可以代替2.0 。 然后人们想知道这样的replace是如何工作的,假设我们允许任何简短的指令序列来代替除法,但运行速度明显更快,同时提供相同的结果。 除了普通的乘法之外,还特别允许融合的乘加运算。 我在评论中指出了以下相关文章: Nicolas Brisebarre,Jean-Michel Muller和Saurabh Kumar Raina。 提前知道除数时加速正确舍入的浮点除法。 IEEE Transactions on Computers,Vol。 53,第8号,2004年8月,第1069-1072页。 本文作者所提倡的技术将计算除数y的倒数作为归一化的头尾对z h :z l如下: z h = 1 / y,z l = fma(-y,z h ,1 )/ y 。 之后,分割q = x / y然后被计算为q = fma(z h ,x,z l * x) 。 本文导出了除数y必须满足的各种条件才能使该algorithm正常工作。 正如人们容易观察到的那样,当头部和尾部的符号不同时,该algorithm存在无穷大和零的问题。 更重要的是,由于商尾zl * […]

为什么整数除法码给出了错误的答案?

我在Java中有一个非常简单的部门(这是一个产品数量/每小时生产),但是无论何时我做这个部门,我都会遇到奇怪的错误: float res = quantity / standard; 我已经尝试了以上的几个值的分工,我总是得到错误,但是我尝试了其他地方,并得到正确的是这样的: 世界上任何地方: 13.6 = 6800 / 500; Java的: 13.0 = 6800 / 500; 我已经研究了BigDecimal和BigInteger,但是我还没有find一种方法来与他们创build这个部门,还有没有其他的方式来做这个部门在Java中没有精度错误? 任何帮助将不胜感激。

Python整数除法产生浮点数

Python 3.1 (r31:73574, Jun 26 2009, 20:21:35) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> 2/2 1.0 这是打算? 我强烈记得早期版本返回int/int=int ? 我应该怎么做,是否有一个新的分工操作员,或者我必须总是施放?

为什么在Ruby中除法返回一个整数而不是十进制值?

例如: 9 / 5 #=> 1 但我预计1.8 。 我怎样才能得到正确的十进制(非整数)结果? 为什么它返回1呢?

除法结果始终为零

我得到了这个C代码。 #include <stdio.h> int main(void) { int n, d, i; double t=0, k; scanf("%d %d", &n, &d); t = (1/100) * d; k = n / 3; printf("%.2lf\t%.2lf\n", t, k); return 0; } 我想知道为什么我的variables“t”总是为零(在printf函数中)?

我怎样才能迫使部门浮动? 司保持四舍五入到零

我有两个整数值a和b ,但我需要他们的比例在浮点数。 我知道a<b和我想要计算a/b ,所以如果我使用整数除法,我将总是得到0剩下的a 。 我如何强制c在Python中成为浮点数字? c = a / b