我发现有两种方法可以从c++的除法运算中获得整数
问题是哪种方法更有效(更快)
第一种方式:
Quotient = value1 / value2; // normal division haveing splitted number
floor(Quotient); // rounding the number down to the first integer
第二种方式:
Rest = value1 % value2; // getting the Rest with modulus % operator
Quotient = (value1-Rest) / value2; // substracting the Rest so the division will match
还请演示如何找出哪种方法更快
最佳答案
如果要处理整数,则通常的方法是
Quotient = value1 / value2;
而已。结果已经是整数。无需使用
floor(Quotient);
语句。无论如何,它没有任何作用。如果需要,您可能想使用Quotient = floor(Quotient);
。如果您有浮点数,那么第二种方法将根本不起作用,因为
%
仅为整数定义。但是从实数除法得到整数意味着什么?用8.5除以3.2会得到什么整数?问这个问题有意义吗?附带说明一下,您称为“休息”的事物通常称为“提醒” .remainder。
关于c++ - 有效划分休息的有效方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6799102/