`
老顽童
  • 浏览: 48148 次
  • 性别: Icon_minigender_1
  • 来自: 默认
社区版块
存档分类
最新评论

整数除法和余数运算符

阅读更多

整数除法和余数运算符

将算术运算符应用于整数操作数总是产生整数结果。关于除法,则会发生一种有趣的情况。如果写如下所示的表达式

9 / 4

J ava 规则指定该操作的结果必须是整数因为两个操作数都是int类型。(赋值给double时也会舍去余数,出不来想要的结果2.25,) 程序给表达式赋值时,它用9除以4,舍去余数。因此,表达式的值是2,而不是2.25 。 从数学上说,如果要计算正确的结果,就至少有一个操作数必须是浮点数(double类型)。例如,下面3个表达式

9.0 / 4
9 / 4.0
9.0 / 4.0

每一个都产生浮点数2.25。只有当两个操作数都是int类型时,才会舍去余数。

计算余数有另外一个算术运算符,Java中用百分比符号(%)表示。%运算符要求两个操作数都是int类型。用第一个操作数除以第二个操作数,返回 余数。例如,下面这个表达式的值是1,

9 % 4

因为9除以4,剩余1。下面是其他一些%运算符的示例:

0  % 4=0                               19 % 4=  3
1  % 4=1                               20 % 4=  0
4 % 4=0                                   2001 % 4=  1

事实证明,在大量编程应用程序中,/和%运算符非常有用。例如,%运算符通常用于测试一个数能否被另一个数除尽。例如,要确定整数n能否被3除尽, 只要检查表达式n % 3的结果是不是0就可以了。

注意,当%的一个或两个操作数为负数时,要知道结果是什么就不是那么容易了。Java确实定义了那些情况下的结果,但是所开发的定义与机器体系结构 的工作方式相一致,遗憾的是,这与数学家的期望不相符。为了防止混淆,本文避免与负数操作数一起使用%,在您自己的代码里采取相同的约定也很有必要。

分享到:
评论

相关推荐

    整数运算和一元负号运算符

    值得注意的是,整数除法在某些语言中可能会向下取整,例如,9 / 4的结果可能是2而不是2.25。 整数运算的优先级是按照数学中的运算规则进行的,即先乘除后加减,括号内的运算先于括号外。这种顺序决定了计算的次序。...

    整数乘除法练习器

    注意,整数除法会忽略小数部分,只保留整数结果。此外,还有取模运算符`%`,用于获取除法的余数,可用于判断是否为整除。 四、控制流程 为了让用户能够多次进行计算,我们需要循环结构。可以使用`while`、`for`等...

    C语言中整数除法取商和取余运算的实现.pdf

    在本文中,作者白鸿武提出了一种在C语言环境中实现整数除法取商和取余运算的方法,其核心是自定义函数和运算符重载,以确保在任何情况下都能得到符合带余除法定义的正确商和余数。这种自定义方法可以解决标准运算符...

    2.带余除法的c语言程序

    在编程领域,尤其是在计算机科学和数学的交叉部分,带余除法是一种基本的运算,它在初等...通过理解和掌握带余除法,开发者能够更好地解决涉及整数除法的问题,以及在更高级的应用场景中如密码学和算法设计中发挥作用。

    vb基础算数运算符[参照].pdf

    浮点除法和整数除法是VB中两种不同的除法运算符。浮点除法是使用"/"符号,结果是一个小数值。例如,Private Sub Command1_Click() Dim A As Double A = 5 / 2 MsgBox A End Sub 整数除法是使用"\\"符号,结果是一...

    该程序是除法计算器的源程序

    3. **运算符**:大多数编程语言中,除法运算符是`/`,整数除法可能使用另一个运算符,如C++中的`/`和`%`分别代表浮点除法和整数除法。 4. **精度问题**:浮点除法可能会涉及到精度问题,尤其是在不同数据类型的混合...

    除法运算方法

    在MATLAB中,进行除法运算有多种方法,可以分为浮点除法、整数除法、地板除法和向零除法等。本示例着重介绍如何在MATLAB环境中创建一个简单的用户界面(UI)来进行除法运算,并处理除以零的异常情况。 首先,我们...

    verilog中有符号整数说明及除法实现.zip_verilog signed_verilog中有符号数的除法_verilog整

    总结来说,Verilog虽然不直接提供有符号整数除法,但通过巧妙的逻辑操作,如乘法和移位,可以实现有符号整数的除法功能。这需要对二进制运算和Verilog语法有深入的理解。在实际设计中,还可以使用现成的IP核或者第三...

    python-除法运算.docx

    结合其他运算符和函数,可以进行更复杂的数学运算,比如求模运算 `%`(返回除法的余数)和乘方运算 `**`。此外,还可以利用Python的math库来进行更高级的数学计算,如对复数的除法、矩阵除法等。 总之,Python的除...

    Java运算符的使用

    - `/`:除法运算,注意整数除法会丢弃小数部分。 - `%`:模运算,返回除法的余数。 - `++`:递增运算,用于增加变量的值,有两种形式:前缀(++x)和后缀(x++)。 - `--`:递减运算,用于减少变量的值,同样有两...

    短除法求最大公约数——C++代码

    在C++中,`%`运算符用于计算除法的余数,而递归调用则确保了算法的正确执行。 在实际开发中,这种算法常用于优化其他计算,比如简化分数、检测素数等。由于其简洁的逻辑和高效的性能,短除法在编程竞赛和算法设计中...

    02_输出和运算符1

    Python输出和运算符 在Python语言中,输出和运算符是非常重要的...Python中的基本运算符包括加法、减法、乘法、除法和取余数,而特殊运算符包括求幂和整数除法。混合运算时需要注意括号的优先级,以免出现错误的结果。

    完善除法计算器

    【描述】:“功能基本上很全面,很好用的”意味着这个Java计算器实现了多种计算模式,可能包括但不限于整数除法、浮点数除法、有余数的除法、连续除法以及可能的复杂数除法。此外,它还注重用户体验,可能具有清晰的...

    VB6.0运算符中的求整数和求余等函数的应用,源代码.

    在VB6.0中, `%` 运算符用于执行模运算,即求除法的余数。例如,`5 % 2` 的结果是1,因为在5除以2后,余数为1。同样,`-5 % 2` 的结果是-1,因为-5除以2后余数为-1,这与某些其他编程语言(如Python)的行为有所不同...

    JAVA运算符[借鉴].pdf

    - 模运算符:5 % 2 = 1(整数除法的余数) 此外,Java还提供了自增(++)和自减(--)运算符,它们用于快速增加或减少变量的值。自增和自减分为前缀形式(如++x, --x)和后缀形式(如x++, x--)。前缀形式会在运算...

    第三课 算数运算符和表达式 课件(6张PPT).zip

    4. 除法运算符 (/): 表现为整数除法或浮点数除法,`10 / 2` 结果为 5.0。如果两个整数相除,结果通常为浮点数。 5. 取余数运算符 (%): 返回除法后的余数,如 `7 % 3` 结果为 1。 6. 幂运算符 (^ 或 **): 用于求一...

    实验1 原码除法器设计1

    在设计过程中,禁止直接使用Verilog中的除法和取模运算符,而是要利用恢复余数算法或加减交替算法来实现。 **原码除法原理**: 原码除法中,符号位是独立处理的。假设被除数为[x]原,除数为[y]原,它们的绝对值分别...

    c#运算符和表达式课件,

    例如,5 + 3的结果是8,5 - 3的结果是2,5 * 3的结果是15,5 / 3的结果是1.6666(浮点数),5 % 3的结果是2(整数除法的余数)。 2. 赋值运算符:用于将值赋给变量,如=`、+=、-=、*=、/=、%=。例如,int a = 5; a ...

    Bigint大整数类

    - **除法**:除法通常更复杂,可以使用长除法算法,需要维护商和余数。 - **取余**:`modulus`或`%`运算符重载,返回除法的余数。 4. **比较操作**:`BigInt`类还需要提供`compare`方法或比较运算符(`, `>`, `==...

    JAVA运算符[整理].pdf

    - `%` 是模运算符,返回整数除法的余数,对浮点数也有效。 - `++` 和 `--` 分为前缀和后缀两种形式,分别用于增加或减少变量的值。前缀形式先改变值再使用,后缀形式先使用再改变值。 ### 2. 基本数据类型的运算 - ...

Global site tag (gtag.js) - Google Analytics