首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

% 不是运算符?

我们先留着不说,先来看一下余的区别: 余,遵循尽可能让商 向0靠近 的原则,fix(); ,遵循尽可能让商 向负无穷靠近 的原则,floor()。...总结:当a和n符号一致时,求运算和求余运算所得的c的值一致,因此结果一致。当符号不一致时,结果不一样。求运算结果的符号和n一致,求余运算结果的符号和a一致。...各个环境下 % 运算符的含义不同,比如 C/OC/C++,Java 余,而 Python 则为。 所以我们的疑惑就解开了,因为在 Python % 是,而在 Java 为求余。...两者的区别就在于是往0整(余)还是负无穷整()。 为什么那个人的回答不全对呢?...因为不是 Python 规定的向负无穷整,而是运算就是往负无穷整,在 Python % 是运算,而在那几个语言中是运算。 个人理解,如有疏漏请指出。

1.7K20

python 负数运算实例

也可以换个思路想, -340%60 =(比340大的那个可以被60整除的正整数) – 340 = 360 – 340 = 20 举例: 1%3 = 1 -1%3 = 2 补充知识:python对负数求余的计算方法和求幂运算注意点...整除运算(除法计算出结果后,向下整) 使用整除运算用 // 1 // 2 0 3 // 2 1 10 // 3 3 10 // -3 -4 10 / 3 = 3.3333 故:10 // 3对3.333...向下整 等于 3 10 / -3 = -3.333 10 // -3 对-3.33 向下整 等于 -4 2....在上面已经计算过 10 % -3 = 10 – (-4)(-3) = 10 – 12 = -2 -10 % 3 = 2 10 % 3 = -10 – (-4)*3 = -10 + 12 = 2 求幂运算需要注意的一点...3.求幂运算用 ** -3 ** 2 -9 (-3) ** 2 9 乘方运算符的优先级比求负(-)高,先乘方后求负 以上这篇python 负数运算实例就是小编分享给大家的全部内容了,希望能给大家一个参考

2.7K20

C语言符号-运算

目录 前言 整 向0整 向-∞整 向+∞整 四舍五入整 汇总 \余 对于正数 对于负数 余和的理解 ---- 前言 ---- 本文主要讲解并真正理解余\运算是怎样的!...\余 ---- 定义: 如果a和d是两个自然数,d非零,可以证明存在两个唯一的整数 q 和 r 满足 a = q*d + r 且0 ≤ r < d。...由此对于负数“”结果的不同,我们分别称之为正余数和负余数 余和的理解 ---- 余:尽可能让商,进行向0:尽可能让商,向-∞方向整 从而C%,本质其实是余...;Python%,本质其实是 对任何一个大于0的数,对其进行0向整和-∞整,整方向是一致的,故等价于余 对任何一个小于0的数,对其进行0向整和-∞整,整方向是相反的,...故不等价于余 结论: 两个同符号数据参与余,等价于余,不同语言余数相等 两个不符号数据参与余,不等价于余,余数大小需考虑语言整规则

3K40

Java 余 (remain), (mod) 的 区别和运算

范围区别:主要是用于计算机术语余则更多是数学概念。 主要的区别在于对负整数进行除法运算时操作不同 那么具体是怎样的不同?...首先需要知道Java如何余,遵循尽可能让商大的原则 —–余:尽可能让商的绝对值更小 —–如-9rem2,-9/2=-4.5,商为-4,。...余数为-9-(2*-4)=-1 ,遵循尽可能让商小的原则 —–:“向下”的意思就是说尽可能让商更小 —–如-9mod2,-9/2=-4.5,商为-5。...余数为-9-(2*-5)=1 为了方便记忆: a ÷ b = c ··· r a,b 同号 时(a,b>0 || a,b<0),余相同都为r 当a,b 异号时,为 (r + b) ,余为...r 注意:在C/C++, C#, JAVA, PHP这几门主流语言中,’%’运算符都是做运算,而在 python的’%’是做运算

1.7K20

Python运算

所谓运算,就是计算两个数相除之后的余数,符号是%。如a % b就是计算a除以b的余数。...实际上,虽然结果不一样,不过运算完全遵从统一的规则: a \% b = a- \lfloor\frac{a}{b}\rfloor * b 其中\lfloor\frac{a}{b}\rfloor表示...a除以b的结果向下整。...比如9\%5,先计算\lfloor\frac{9}{5}\rfloor,向下整得到1,然后计算9-1*5,得到4; 同理-9\%5,先计算\lfloor\frac{-9}{5}\rfloor,向下整得到...直接求结果,这个应该来说是比较简单的,而且无论符号是什么,我们都只计算这个值; 对于有负号的,不管负号在哪个数字,都去除负号,然后计算步骤1的结果; 接下来根据负号的位置分为3种情况,假设除数是K,去掉负号后的结果是

1.4K30

程序员数学基础【三、运算(运算功能重叠部分)】(Python版本)

什么是运算: 需要明确一点是,程序语言中除法的整数商默认优先取临近值,即往负无穷方向最邻近整数。...运算(“Modulus Operation”)和运算(“Remainder Operation ”)两个概念有重叠的部分但又不完全一致。主要的区别在于对负整数进行除法运算时操作不同。...主要是用于计算机术语余则更多是数学概念。...运算具体实现过程为: 对于整型数a,b来说,运算或者求余运算的方法都是: 1.求 整数商: c = a//b (//在python中表示地板商,/表示float商) 2.计算或者余数: r...注意,这里的‘余数’就是现实数学我们所指的余数,-7%4=-1余-3 在python语言环境 % 运算符代表,-7 % 4=1 例子: print("{0}%{1}={2}".format(

72820

Java余和

抛开高级语言的实现,运算运算本身并不完全一致,区别在于对负整数进行商时操作不同。虽然这样说,但是运算运算的公式都一样。...先给出规则,如果z小于0,且z不为整数(即x没有被y整除),那么: 如果是余:那么z朝0方向整,即:-1.33 => -1 如果是:那么z朝负无穷方向整,即:-1.33 => -2 举个例子:...– 3 * (-2) == 2 所以大家不要再把余和混为一谈啦!...在Java,%是余数,的操作是:Math.floorMod,我们可以看一下Java的操作是怎么实现的(以下为java源码,只是我加上了注释): /** *计算 x - z */ public...r--; } return r; } 注:不同的语言,对于%运算符的含义可能是不一样的,比如c、c++、java 为余,而python为 发布者

2.1K10

Python的整除和实例

一 除法 1 正数除法 Python3的除法,除法/总是返回一个浮点数,如下: 6/4 1.5 2/3 0.6666666666666666 如果只想得到整数的结果,丢弃分数部分,可以使用运算符...故当整除运算有负数时,结果稍有不同: 4//-3 -2 -10//3 -4 我们通常的计算,采用的是向零整的方法计算,4//-3 = -1,-10//3 = -3。...如果希望在Python3对负数采用向零整的方法计算,可以如下处理: int(4/-3) -1 int(-10/3) -3 二 Python3 采用%表示运算,结果返回除法的余数...: 21%10 1 3%4 3 但是由于Python采用的是向下整的方式,所以对负数的余结果不一样: -21%10 9 -5%4 3 结合前面负数的整除计算,可以理解的结果...list[-1] = e In [1] list = ["a", "b", "c", "d", "e"] print(list[-1]) e 以上这篇Python的整除和实例就是小编分享给大家的全部内容了

4K20

使用位运算替代运算

昨天的分析HashMap原理的文章里面提到,使用位运算替代取运算效率高,但位运算只能在特定场景下才能替代%运算。...正常情况下: 但如果b的值为2的n次方的时候(n为自然数),这时候就可以用位运算来替代运算, 转化如下: 2的n次方的二进制如下: 从上面能看到左移一位是放大2倍,右移一位是缩小2倍 分别减一后的二进制...举例 我们算下11%8的, 11的二进制是:1011 代入上面的公式: 7的二进制: 0111 二者做&(与)运算 ,回忆下运算规则: 结果: 1011 & 0111 = 0011 转化成10进制后...=3 所以11%8=3 这种方法只是适合于求一个数除以二的N次冥才正确,求的过程,就是2^n-1的1的个数就是n的值,再与a做&运算,得出来的低位就是我们期望的余数。

1.8K50

Numpy 基本除法运算运算

参考链接: Python的numpy.floor_divide 基本算术运算符+、-和*隐式关联着通用函数add、subtract和multiply   在数组的除法运算涉及三个通用函数divide...数组的除法运算    import numpy as np   # divide函数在整数和浮点数除法均只保留整数部分(python3的np.divide == np.true_divide)   ...array([ 0.5 , 0.33333333, 0.6 ]))  # floor_divide函数总是返回整数结果,相当于先调用divide函数再调用floor函数(floor函数将对浮点数进行向下整并返回整数...]  # /运算符相当于调用divide函数    print (a/b,b/a) # (array([2, 3, 1]), array([0, 0, 0]))  # 运算符//对应于floor_divide...运算# 计算模数或者余数,可以使用NumPy的mod、remainder和fmod函数。

1.6K30

Utility之负数

最近在跟孩子学习表内除法,想到一个问题:C语言里怎样处理负数? 表内除法:12÷4=3 整数除法:13÷4=3…1 整数整除:13/4是等于3吗? 负数:-13%4等于多少?...而C语言里的整除,采用的就是向零整(Truncate)。 再来看。不管哪种整除操作,都会符合公式:被除数÷除数=商…余数,所以:余数=被除数-除数*商。...那么C语言里就是: 13÷4=3…1;-13÷4=-3…-1;13÷-4=-3…1;-13÷-4=3…-1 15÷4=3…3;-15÷4=-3…-3;15÷-4=-3…3;-15÷-4=3…-3...规律就是:余数与被除数同符号 看来这四则运算里,除法比其它三项复杂多了 想到一个段子:为什么古龙先生取名字经常用数字,而且多是奇数?...例如绝代双骄的轩辕三光、七杀手的龙五、欢乐英雄的燕七、武林外史的朱七七、凤舞九天的宫九、萧十一郎、三少爷的剑的燕十三、碧血洗银枪的无十三、风铃的刀声的彭十三豆。。。 这样显得很厉害,因为很难除

1.4K20
领券