编程基础/整数除法和取余
在整数除法和取余中,被除数被除数除,得到一个整数商和一个余数。整数商运算被称为整数除法,整数余数运算被称为取余。[1][2]
当我们达到成年时,我们通常认为除法会产生一个可能带有小数部分的答案(浮点数据类型)。这种除法被称为浮点除法。然而,当两个操作数都是整数数据类型时,除法的行为可能不同,取决于编程语言,被称为整数除法。考虑
11 / 4
因为两个操作数都是整数数据类型,所以表达式的计算结果(或答案)将是2,没有小数部分(它被丢弃了)。同样,这种除法被称为整数除法,这是你在小学第一次学习除法时学到的。
在数据操作的现实世界中,有些东西总是以整单位或数字(整数数据类型)来处理。分数不存在。为了说明我们的例子:我有11个硬币,要平均分配给我的4个孩子。他们每个人能得到多少?答案是2,我还剩下3个(或者在我的手里还剩下3个)。答案不是每个孩子2 ¾或2.75。硬币不能分成小数部分。不要试图跳出框框思考,也不要假装你是海盗。用斧头把剩下的3个硬币劈成八分之一。然后,给每个孩子2个硬币和6个八分之一,或者2 6/8 或 2 ¾ 或 2.75。如果你这样想,我会把我的例子改成番茄汤罐头。我敢你把剩下的三罐汤切碎,每个孩子 ¾ 罐。
什么是取余?它是整数除法答案的另一部分。它是余数。还记得在小学,你会说,“十一除以四等于二余三”。在许多编程语言中,取余运算符的符号是百分号(%)。
11 % 4
因此,这个表达式的答案或值为3,或整数除法的余数部分。
许多编译器要求你必须在取余运算符两边都有整数操作数,否则你会得到一个编译错误。换句话说,对浮点操作数使用取余运算符是没有意义的。
不要让以下内容让你感到困惑。
6 / 24 不同于 6 % 24
你能够把24分成6多少次?6除以24等于零。这与:6除以24的余数是多少?不同。6,余数部分由取余给出。
计算以下除法表达式
- 14 / 4
- 5 / 13
- 7 / 2.0
计算以下取余表达式
- 14 % 4
- 5 % 13
- 7 % 2.0
解答
- 14 % 4 = 2
- 5 % 13 = 5
- 7 % 2.0 = 1.0
- 整数除法
- 没有小数部分的除法——给出“商”作为答案。
- 取余
- 整数除法的余数部分。