python中36-5为什么等于-1?

而//是整除,对于python语言//是向下取整,即向负无穷大方向取整,结果是不大于商的最大整数。36除以-5的商是-7.2,不大于-7.2的最大整数是-8,所以36//-5等于-8。所以36%-5=36-(36//-5)*(-5)=36-(-8)*(-5)=36-40=-4。
python中36-5为什么等于-1?
36%-5根本就不等于-1,36%-5等于-4好吧?
下图是验证:

为什么36%-5等于-4?
因为%是求余数,余数=被除数-被除数//除数*除数。
而//是整除,对于python语言//是向下取整,即向负无穷大方向取整,结果是不大于商的最大整数。
36除以-5的商是-7.2,不大于-7.2的最大整数是-8,所以36//-5等于-8。
所以36%-5=36-(36//-5)*(-5)=36-(-8)*(-5)=36-40=-4。
2020-10-16
python中36%-5等于-4吧
36/-5=-7......1或-8......-4
由于python语言对运算符的编译(由python开发者决定的),在计算机内存中,python的 “//”运算符,除不尽的会向前移位,比方说:如果结果是5.1,就会返回5,如果是 -5.1,就会编译成 -6,然后返回给你。
python 中36//-5返回的是-8
所以36%-5取商为-8时的余数
补充
自然数取余定义分为两种:
1)定义1:如果a和d是两个自然数,d非零,可以证明存在两个唯一的整数 q 和 r,满足a=qd+r且0 ≤ r < d(其中q为商,r为余数)。定义1一般作为数学中的取余法则,即两个数取余,余数总是为正数。举例:5%3=3x1+2,商为1,余数为2(-5)%(-3)=(-3)x2+1,商为2,余数为15%(-3)=(-3)x(-1)+2,商为-1,余数为2(-5)%3=3x(-2)+1,商为-2,余数为12)
定义2:如果a 与d 是整数,d 非零,那么余数 r 满足这样的关系:a = qd + r , q 为整数,且0 ≤ |r| < |d|。定义2取余的结果就会导致出现两个余数了,比如5%(-3) = (-3)x(-1)+2 = (-3)x(-2)-1,所以这里的余数2和-1都满足定义。我们把2称为正余数,-1成为负余数。通常,当除以d 时,如果正余数为r1,负余数为r2,那么有r1 = r2 + d。所有语言和计算器都遵循了尽量让商尽量靠近0的原则,即5%(-3) 的结果为2而不是-1,(-5)%3的结果是-2而不是1。
2020-10-17
36%-5
结果是-4

2020-10-16
百度“编程语言中负数取余的问题”2020-10-16
mengvlog 阅读 10 次 更新于 2025-07-19 09:17:01 我来答关注问题0
  •  猪八戒网 python等级考试一级多少分算高分

    计算机等级考试的合格分数是多少?60分。考试实行百分制计分,但以等第通知考生成绩。等第共分优秀、良好、及格、不及格四等。90-100分为优秀、80-89分为良好、60-79分为及格、0-59分为不及格。成绩在及格以上者,由教育部考试中心颁发合格证书。成绩优秀者,合格证书上会注明优秀字样;成绩良好的...

  •  天天教育ds 与六进制数(35)6相等的是

    六进制数(35)6表示的是36进制下数字35,它等于十进制下的23。首先,我们需要了解不同进制的数表示方法。在六进制下,数字从0开始,到5结束,用0-5这六个数字来表示数值。而十进制下,数字从0开始,到9结束,用0-9这十个数字来表示数值。具体来说,六进制数(35)6中,3表示的是十进制下的3...

  • (3)为系统变量path追加F:\Python36\Scripts\ 追加的路径是你的python文件路径(敲黑板,记得要用;分割开)到这里就大功告成了。快开始你的编程之路吧!

  •  猪八戒网 python两个骰子有多少种结果(python两人轮流掷骰子5次)

    两个骰子,计算:(1)一共有多少种不同的结果两个骰子不同有6*5/2=15种,加上两个骰子相同的6种,一共21种结果。扔两颗骰子有多少种可能性21种。一个骰子有六个面,理论上每次投两个组合起来就是有6*6=36种。616263646566可是两个骰子都相同,所以呢,由以上数字组合,可看出实际出现的不同...

  • 这个问题很简单。跟 print(z, loc_glo(4,2))这个语句的执行顺序有关。在这个语句中,执行顺序是:先执行print函数, 打印第一个参数z, 当时loc_glo(4,2) 还没执行。z的值为10.print打印第二个参数:loc_glo(4,2) 。 这个时候会执行loc_glo(4,2)获取值,loc_glo执行完后,z的值变为3...

檬味博客在线解答立即免费咨询

Python相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部