首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模数到底是如何工作的?

模数到底是如何工作的?
EN

Stack Overflow用户
提问于 2011-07-28 19:55:05
回答 2查看 6.8K关注 0票数 2

我知道模数(%)的作用,它给你余数。但它如何做到这一点呢?我看到它使用的公式是:模=被除数-(被除数/除数)*除数10%3应该给你1 (10是被除数,3是除数),这个公式给出: 10-(10/3)*3 = 10-10 =0,这显然是错误的。

然后,使用纯变量,除数-(除数/除数)*除数=除数-除数=0

我在这里做错了什么?(另外,这个公式来自JASS,魔兽争霸3游戏中使用的语言)

EN

回答 2

Stack Overflow用户

发布于 2011-07-28 19:58:12

在公式中,(dividend / divisor)是一个整数除法,计算结果为一个整数。

因此,10-( 10 /3)*3 =10-9=1

票数 4
EN

Stack Overflow用户

发布于 2011-07-28 19:59:14

在许多使用C、C++、Java等的编程语言中,10/3会导致3,因为除法实际上是整数除法,小数部分被截断。

所以,换句话说,n/d只给出了商。

现在,从算术中我们知道,任何正整数n和任何正整数除数d,n都可以表示为:n= q*d + r。如果0≤r

在这些编程语言中,n/d给出了q。

所以,n- (n/d)*d =n- q*d = r,余数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6858514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档