国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中的取模運算方法

2020-01-04 14:05:58
字體:
供稿:網(wǎng)友

所謂取模運算,就是計算兩個數(shù)相除之后的余數(shù),符號是%。如a % b就是計算a除以b的余數(shù)。用數(shù)學語言來描述,就是如果存在整數(shù)n和m,其中0 <= m < b,使得a = n * b + m,那么a % b = a - n * b = m.

取模運算的兩個操作數(shù)都必須是整數(shù),可以是負整數(shù),但是b不可以是0,因為被除數(shù)不能為0嘛。

當a和b中存在負整數(shù)時,首先計算|a|%|b|=c,然后a%b的符號與b一致。也就是說,如果b>0,則a%b=c;如果b<0,則a%b=-c

比如:

Python,取模運算

好了,上面是以前我對取模運算的認識,我記得<<C++ Primer>>上也是這么寫的。但是,在Python中,我隨便輸入了一個浮點數(shù)進行取模運算,竟然也是可以的,驚呆了==

Python,取模運算

不過呢,仔細觀察就會發(fā)現(xiàn),不知道它是怎么計算的?。≡趺崔k呢,我們首先來看看,浮點數(shù)的取模在數(shù)學上要怎么定義呢?

浮點數(shù)取模的數(shù)學定義:對于兩個浮點數(shù)a和b,a % b = a - n * b,其中n為不超過a / b的最大整數(shù)。

例如,

3.5 / 2 = 1.75,取n = 1,則3.5 % 2 = 3.5 - 1 * 2 = 1.5

-3.5 / 2 = -1.75,取n = -2,則-3.5 % 2 = -3.5 - (-2) * 2 = 0.5

3.5 / -2.5 = -1.4,取n = -2,則3.5 % -2.5 = 3.5 - (-2) * (-2.5) = -1.5

另外,C++中有一個函數(shù)fmod可以用來計算浮點數(shù)的取模。

總結:

取模運算的兩個操作數(shù)a和b可以是整數(shù),也可以是浮點數(shù);可以是正數(shù),零(b不能為0),也可以是負數(shù)。不管是整數(shù)還是浮點數(shù),是正數(shù)還是負數(shù)還是零,只需要抓住取模的數(shù)學定義即可。統(tǒng)一的數(shù)學定義如下:

對于兩個數(shù)a和b(b不為0),a % b = a - n * b,其中n為不超過a / b的最大整數(shù)(這里的除就是正常的除,不是整除)。

需要注意的是,整數(shù)的取模運算的定義和浮點數(shù)的是一樣的,所以計算方法也是一樣的。最前面提供的整數(shù)取模的方法,其實本質(zhì)上跟浮點數(shù)取模的方法是一致的,只不過這種方法可能在含有負整數(shù)的整數(shù)取模中比較方便而已。

以上這篇Python中的取模運算方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關教程知識閱讀請移步到python教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 容城县| 于田县| 尉犁县| 家居| 太仓市| 舒城县| 台南市| 丘北县| 无极县| 灵川县| 墨玉县| 财经| 晋宁县| 丰镇市| 阳春市| 淄博市| 岳西县| 邹平县| 化隆| 永济市| 井冈山市| 金山区| 宁都县| 巴彦县| 望奎县| 甘南县| 屏南县| 宜兰市| 万载县| 哈尔滨市| 青川县| 简阳市| 陆川县| 万山特区| 东宁县| 宽甸| 巫溪县| 准格尔旗| 通江县| 会泽县| 诏安县|