标签: integer-division

整数除法与商数相比:为什么这个令人惊讶的结果呢?

//Python 的"整数除法"运算符让我感到惊讶,今天:

>>> math.floor(11/1.1)
10.0
>>> 11//1.1
9.0
Run Code Online (Sandbox Code Playgroud)

文档读取"x和y"的"(浮动)商".那么,为什么math.floor(11/1.1)等于10,但是11 // 1.1等于9?

python python-2.x integer-division floor python-3.x

9
推荐指数
1
解决办法
6936
查看次数

"长x = 1/2"是等于1还是0,为什么?

如果我有类似的东西:

long x = 1/2;
Run Code Online (Sandbox Code Playgroud)

这不应该四舍五入到1?当我在屏幕上打印时,它会说0.

c java integer-division long-integer

8
推荐指数
3
解决办法
8229
查看次数

如何在此模板代码中避免关于除零的警告?

我有一个定点算术类,其中这是一个显着的部分:

template <typename I, I S>
struct fixed
{
    I value;

    fixed(I i) : value(i * S) {}

    template <typename J, J T> fixed(const fixed<J, T> &fx)
    {
        if (S % T == 0)
            value = fx.value * (S / T);
        else if (T % S == 0)
            value = fx.value / (T / S);
        else
            value = S * fx.value / T;
    }

    static_assert(S >= 1, "Fixed-point scales must be at least 1.");
};
Run Code Online (Sandbox Code Playgroud)

在GCC 4.4.5上,以下代码行:

fixed<int, 8> f …
Run Code Online (Sandbox Code Playgroud)

c++ templates g++ integer-division

8
推荐指数
1
解决办法
1949
查看次数

获取c ++中的数字百分比

如何计算int的百分之几?
例如,我想从数字中得到30%,如果我将使用这个代码示例,我会得到错误的答案:

int number = 250;
int result = (number / 100) * 30;  
Run Code Online (Sandbox Code Playgroud)

结果将是60,真正的答案是75,有没有办法计算它?

c++ integer-division

8
推荐指数
1
解决办法
7万
查看次数

ColdFusion太大而不是整数

我正在尝试将大量数据转换为兆字节.我不想要小数

numeric function formatMB(required numeric num) output="false" {
    return arguments.num \ 1024 \ 1024;
    } 
Run Code Online (Sandbox Code Playgroud)

然后它抛出一个错误

在此输入图像描述

我该如何解决这个问题?

coldfusion integer-division coldfusion-2016

8
推荐指数
1
解决办法
841
查看次数

同情的任何方式做整数除法?

我有一个很长的表达,我认为可以简化,我认为sympy这将是完美的方式.不幸的是,公式依赖于几个整数除法,我找不到任何方法来表示那些sympy.

>>> x=Symbol('x')
>>> (x+1)/2
x/2 + 1/2
Run Code Online (Sandbox Code Playgroud)

显然不是我想要的,1/2不是整数.

>>> (x+1)//2
TypeError: unsupported operand type(s) for //: 'Add' and 'int'
Run Code Online (Sandbox Code Playgroud)

显然sympy不处理//.

>>> Integer((x+1)/2)
#   A long list of error messages, ending with ...
TypeError: Integer can only work with integer expressions.
Run Code Online (Sandbox Code Playgroud)

似乎Integer只是为了处理常数而不是公式.

有一个功能,trunc但它似乎没有做任何类似于我想要的东西.

有没有办法表示整数除法sympy

python sympy integer-division

8
推荐指数
1
解决办法
559
查看次数

关于两个负数的整数除法,C89的行为是什么:向上舍入,向下舍入或未定义?

例如,

如果我写

int var;
var=-8/-5;
Run Code Online (Sandbox Code Playgroud)

根据运算符优先级,-8/-5将等效于((-8)/( - 5)).但C89是否有可能给出两个值,例如-8/5的情况,它可以给出-1或-2.或者它会把它当作两个正整数的划分?

问题是参考KNKing的书(C编程现代方法)

c rounding integer-division c89 ansi-c

8
推荐指数
1
解决办法
431
查看次数

除以零不会导致Nvidia Jetson出现运行时异常

我对ARM处理器的内部细节不是很熟悉,但是我不了解Nvidia Jetson Nano开发板上的以下行为。

C代码示例...

//main.c

#include <stdio.h>

int main()
{
  int fred = 123;
  int i;

  for(i = -10 ; i <= 10 ; i++)
    printf("%d / %d == %d\n", fred, i, fred / i);

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

编译:

gcc main.c -ggdb
Run Code Online (Sandbox Code Playgroud)

运行生成的a.out可执行文件将产生以下输出...

123 / -10 == -12
123 / -9 == -13
123 / -8 == -15
123 / -7 == -17
123 / -6 == -20
123 / -5 == -24
123 / -4 == -30
123 / …
Run Code Online (Sandbox Code Playgroud)

c arm integer-division divide-by-zero armv8

8
推荐指数
1
解决办法
113
查看次数

假设分母&lt;&gt; 0,整数除法会发生上溢/下溢吗?

(true)整数除法是否会出现上溢/下溢(假设分母不为0)?

由于该值始终保持不变或越来越小(因为在整数除法中,最小的绝对非零分母为1,因此结果永远不会大于分子),因此我认为不会。

我在C / C ++标准的上下文中或多或少地询问,我对各种现代CPU体系结构在定义/未定义行为时如何处理整数除法感兴趣。

c division integer-division undefined-behavior

8
推荐指数
1
解决办法
89
查看次数

整数与浮动分部 - >谁负责提供结果?

我已经在C++中编程了一段时间,但突然有一个疑问,并希望澄清Stackoverflow社区.

当一个整数除以另一个整数时,我们都知道结果是一个整数并且是明智的,浮点除以float也是一个浮点数.

但谁负责提供这个结果?是编译器还是DIV指令?

c c++ integer division integer-division

7
推荐指数
2
解决办法
5751
查看次数