求余运算符

笔记摘自《极客学院》

求余运算(a % b)是计算b的多少倍刚刚好可以容入a,返回多出来的那部分(余数)。

注意:
求余运算(%)在其他语言也叫取模运算。然而严格说来,我们看该运算符对负数的操作结果,"求余"比"取模"更合适些。

我们来谈谈取余是怎么回事,计算9 % 4,你先计算出4的多少倍会刚好可以容入9中:

2倍,非常好,那余数是1(用橙色标出)

在 Swift 中可以表达为:

    9 % 4    // 等于 1

为了得到a % b的结果,%计算了以下等式,并输出余数作为结果:

a = (b × 倍数) + 余数

倍数取最大值的时候,就会刚好可以容入a中。

94代入等式中,我们得1

9 = (4 × 2) + 1

同样的方法,我来们计算 -9 % 4

    -9 % 4   // 等于 -1

-94代入等式,-2是取到的最大整数:

-9 = (4 × -2) + -1

余数是-1

在对负数b求余时,b的符号会被忽略。这意味着 a % b 和 a % -b的结果是相同的。

浮点数求余计算

不同于 C 语言和 Objective-C,Swift 中是可以对浮点数进行求余的。

    8 % 2.5 // 等于 0.5

这个例子中,8除于2.5等于30.5,所以结果是一个Double0.5

 

其实其他语言都是同样的(下面就以java为实例):

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/296906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

万箭齐发!COSCon' 21深圳分会场闪亮登场!

“ 点击蓝字 / 关注我们 ”| 作者:COSCon21 组委会| 编辑:钱奕| 设计:朱亿钦| 责编:沈于蓝01序言世界上最遥远的距离,不是生与死的距离,而是你在我对面办公楼,却不能一起嗨皮。辣么多个辗转反侧…

6部BBC “教材级” 地理纪录片,有生之年必看系列!

全世界只有3.14 % 的人关注了爆炸吧知识看BBC的纪录片,既可以追溯上下数千年的历史文化,也可以欣赏从宇宙到地心深处的奇妙境界,而及其超级精彩的画面即使定格,也是一幅摄影佳作。BBC纪录片题材广泛、制作精良,观看起来…

黑马c++32期_【每日一考】第40期:计提折旧

每天都有很多小伙伴来做会计实操每日一考实操君看到非常的欣慰,希望大家持续打卡学习请看今天的题▼▼▼单选题某企业的一辆运货卡车,其原价为600 000元,预计总行驶里程为500 000千米,预计报废时的净残值率为5%&#x…

C#提升性能的几点提示和技巧

C#性能提示和技巧在Raygun[1],我们是一群非常懂多种语言的开发人员。Raygun的各个部分使用不同的语言和框架编写-最好的工作方式。鉴于大量的C#和我们正在处理的数据的爆炸性增长,在不同的时间需要进行一些优化工作。大部分重大的…

电脑睡眠快捷键_电脑快速进入睡眠的快捷键是什么?

电脑快速进入睡眠的快捷键是什么?正常情况下需要点击电源再按睡眠,小编觉得有点麻烦,如果你想要进入睡眠状态能够像锁屏快捷键那样就好了,那么今天就教大家如何设置睡眠快捷键,让你的电脑快速进入睡眠状态。我们知道电…

世界上最奇特的国界线,万万没想到...

全世界只有3.14 % 的人关注了爆炸吧知识你曾经可能多次在飞机上切换不同的国家,但未曾真的看见过这些国家之间的分界线。没见过之前,你脑海中的国界线是怎样的?一道高墙?还是一条无法逾越的鸿沟......看似正经而严谨,但…

Dell poweredge r210进BIOS修改磁盘控制器(SATA Controller)接口模式

Dell poweredge r210进BIOS修改磁盘控制器(SATA Controller)接口模式 开机后按F2键进入BIOS设置,如下图: BIOS设置主界面: 使用上下键移动光标到“SATA Controller”上,按回车键进入接口模式设置。 使用…

二叉排序树与文件操作的设计与实现_堆排序就这么简单

一、堆排序介绍来源百度百科:堆排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。前面我已经…

Tp框架如何使用事务和锁,还有查询缓存

1.事务 在ThinkPHP框架中,可以使用think\db\Transaction类来实现事务。 use think\Db; use think\db\Transaction;// 开始事务 Db::startTrans();try {// 执行数据库操作Db::table(user)->where(id, 1)->update([name > John]);// 提交事务Db::commit(); }…

因为没钱买衣服,我女朋友不要我了......

1 我妈为了省钱啥事都做得出▼2 高端的黄牛总是用最朴素的方法▼3 不加点什么你们觉得我阴阳怪气祖安大师怎么办?▼4 一天共有86400秒一天写2000首诗,也就是平均43.2秒一首曹植七步成诗也不过如此了▼5 如果在猫顺毛时弄乱它的毛会怎么样&#xff1…

Tech UP——EGO北京分会成立啦

古人崇敬自然,认为天地生万物而四时有序,是以春耕、夏耘、秋收、冬藏。在过去的8年里,InfoQ中国秉持着“促进软件开发领域知识与创新的传播”的理念,始终与技术人和公司在一起。经过8年的耕耘和沉淀,正是给大家呈现一些…

实现一个登录:Mac+.NET 5+Identity+JWT+VS Code

.NET圈儿的朋友们,大家好!我可太喜欢如今开源的.Net了,写代码很巴适!所以今天分享一下之前学习的一个登录小案例,代码有不足之处欢迎指正!!!工具:采用VS Code及其插件开发…

天体运行动图,如此美妙,如此震撼!

全世界只有3.14 % 的人关注了爆炸吧知识三体中心天体也在运动双星系统银河系与仙女系相撞模拟转自:奇趣物理--完--

密封槽设计标准_哈尔滨轴承 | 超全面机械密封选型

有转动的地方,就有HRB轴承(400-086-6629)100多年来,人们采用填料一类的多种密封材料,使液体从液泵壳体沿着主轴的向外泄漏量不断减少。尽管现代工艺流程中采用的液泵,仍然广泛地沿用最古老的密封设计——填料盒,因为其…

重要更新,Office Add-in将全面支持Webview2

在陪娃上课,耳边回响着美妙的音乐,打开电脑码字,给大家分享一个非常重要的消息:Office Add-in将全面支持WebView2了。Office的开发爱好者可能会对此很感兴趣,虽然新一代的Web Add-in随着Office 365的推出,也…

哈佛学者:这3本英文名著,每天小读10分钟,英语level暴涨....

全世界只有3.14 % 的人关注了爆炸吧知识《锵锵》中窦文涛曾说过:“读原著学英语,就像有了可视化进度条,每天的提升肉眼可见。”今天就给大家推荐3本豆瓣高分英文名著,学英语不枯燥,每天小读10分钟,即可学到…

php -- 用文本来存储内容,file_put_contents,serialize,unserialize

根据存储的内容来划分 字符串: file_put_contents :将一个字符串写入文件 语法:int file_put_contents ( string $filename , mixed $data [, int $flags 0 [, resource$context ]] ) 参数 filename:要被写入数据的文件名。 data…

女朋友当众甩了我一巴掌,我扑上去......

1 小朋友,你是否有很多问号?▼2 小鸟:我呸!秀什么秀?没眼看!▼3 开学后你的上课状态......▼4 不能总让保安叔叔拿枪指我▼5 哥哥:让我看看,我妹妹怎么那么可爱!▼6…

为什么我们要做2021.NET中国开发者调研

今年7月的时候,由上海MS Reactor牵头,我们做了一次小型的闭门会议。主要是围绕.NET开源方向进行讨论。 数闪科技的技术总监谷首道给我们带来的消息是他们有意将公司目前正在研发和使用的一整套技术框架进行开源。亲切可爱的辛老师、盛派创始人苏震巍、数…

sql连接远程服务器索引超出了_手机怎么连接服务器远程桌面?RD client远程桌面使用教程...

大家好啊,现在很多游戏、应用为了体验感好、方便使用都实现了多端同步,服务器远程连接也不例外,今天给你们分享手机连接服务器远程桌面的操作方法【 好东西一起分享,好音乐一起听 】不管是安卓还是苹果手机,咱们都需要…