标签: integer-division

整数除以JavaScript中的余数?

在JavaScript中,我如何获得:

  1. 给定整数进入另一个整数的整数倍?
  2. 剩下的?

javascript math modulo integer-division

854
推荐指数
10
解决办法
65万
查看次数

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

例如:

9 / 5  #=> 1
Run Code Online (Sandbox Code Playgroud)

但我期待1.8.如何获得正确的十进制(非整数)结果?为什么它会回归1

ruby math floating-point division integer-division

245
推荐指数
7
解决办法
15万
查看次数

整数除法:你如何产生双倍?

对于此代码块:

int num = 5;
int denom = 7;
double d = num / denom;
Run Code Online (Sandbox Code Playgroud)

价值d0.0.它可以通过强制转换来强制工作:

double d = ((double) num) / denom;
Run Code Online (Sandbox Code Playgroud)

但还有另一种方法可以获得正确的double结果吗?我不喜欢铸造原始人,谁知道会发生什么.

java casting integer-division

232
推荐指数
6
解决办法
36万
查看次数

为什么GCC在实现整数除法时使用乘以奇数的乘法?

我一直在阅读divmul组装操作,我决定通过在C中编写一个简单的程序来实现它们:

文件分割

#include <stdlib.h>
#include <stdio.h>

int main()
{
    size_t i = 9;
    size_t j = i / 5;
    printf("%zu\n",j);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后生成汇编语言代码:

gcc -S division.c -O0 -masm=intel
Run Code Online (Sandbox Code Playgroud)

但是看生成的division.s文件,它不包含任何div操作!相反,它通过位移和魔术数字来做某种黑魔法.这是一个计算代码片段i/5:

mov     rax, QWORD PTR [rbp-16]   ; Move i (=9) to RAX
movabs  rdx, -3689348814741910323 ; Move some magic number to RDX (?)
mul     rdx                       ; Multiply 9 by magic number
mov     rax, rdx                  ; Take only the upper 64 bits of the …
Run Code Online (Sandbox Code Playgroud)

c assembly gcc x86-64 integer-division

206
推荐指数
4
解决办法
1万
查看次数

整数除法的行为是什么?

例如,

int result;

result = 125/100;
Run Code Online (Sandbox Code Playgroud)

要么

result = 43/100;
Run Code Online (Sandbox Code Playgroud)

结果总会成为师的底线吗?什么是定义的行为?

c math c99 integer-division c89

197
推荐指数
6
解决办法
34万
查看次数

找到数字的除法余数

我怎样才能在Python中找到数字的除法余数?

例如:
如果数字为26且分割数为7,则除数余数为5.
(因为7 + 7 + 7 = 21和26-21 = 5.)

python integer-division

139
推荐指数
8
解决办法
51万
查看次数

内部划分:为什么1/3 == 0的结果?

我写的是这段代码:

public static void main(String[] args) {
    double g = 1 / 3;
    System.out.printf("%.2f", g);
}
Run Code Online (Sandbox Code Playgroud)

结果是0.为什么这样,我该如何解决这个问题?

java integer-division

95
推荐指数
3
解决办法
13万
查看次数

为什么分配两个int在分配给double时不会产生正确的值?

为什么在下面的代码片段中呢?

int a = 7;
int b = 3;
double c = 0;
c = a / b;
Run Code Online (Sandbox Code Playgroud)

c最终得到的值是2,而不是2.3333,正如人们所期望的那样.如果ab双打,答案就变成2.333.但肯定是因为c 已经是双重它本来应该使用整数?

那怎么来int/int=double不行?

c++ variables double integer-division

94
推荐指数
7
解决办法
12万
查看次数

如何在javascript中进行整数除法(在int中得到除法答案不浮动)?

Javascript中是否有任何函数可以让你进行整数除法,我的意思是在int中得到除法答案,而不是浮点数.

var x = 455/10;
// Now x is 45.5
// Expected x to be 45
Run Code Online (Sandbox Code Playgroud)

但我希望x为45.我试图消除数字中的最后一位数字.

javascript division integer-division

88
推荐指数
2
解决办法
12万
查看次数

Python 选择将整数除法舍入到负无穷大背后的数学原因是什么?

我知道Python//向负无穷大舍入,而在C++中则/是截断,向0舍入。

到目前为止,这是我所知道的:

               |remainder|
-12 / 10  = -1,   - 2      // C++
-12 // 10 = -2,   + 8      # Python

12 / -10  = -1,     2      // C++
12 // -10 = -2,   - 8      # Python

12 / 10  = 1,      2       // Both
12 // 10 = 1,      2

-12 / -10 = 1,    - 2      // Both
          = 2,    + 8

C++:
1. m%(-n) == m%n
2. -m%n == -(m%n)
3. (m/n)*n …
Run Code Online (Sandbox Code Playgroud)

c++ python rounding integer-division python-3.x

88
推荐指数
6
解决办法
8440
查看次数