Python中的取模運算方法

2022-10-04 18:51:12 字數 1076 閱讀 4650

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

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

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

比如:好了,上面是以前我對取模運算的認識,我記得<>上也是這麼寫的。但是,在python中,我隨便輸入了乙個浮點數進行取模運算,竟然也是可以的,驚呆了==

不過呢,仔細觀察就會發現,不知道它是怎麼計算的啊!怎麼辦呢,我們首先來看看,浮點數的取模在數學上要怎麼定義呢?

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

例如,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++中有乙個函式fmod可以用來計算浮點數的取模。

總結:取模運算的兩個運算元a和b可以是整數,也可以是浮點數;可以是正數,零(b不能為0),也可以是負數。不管是整數還是浮點數,是正數還是負數還是零,只需要抓住取模的數學定義即可程式設計客棧。統一的數學定義如下:

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

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

本文標題: python中的取模運算方法

本文位址: /jiaoben/python/244170.html

Python中的取模運算

所謂取模運算,就是計算兩個數相除之後的餘數,符號是 如a b就是計算a除以b的餘數。用數學語言來描述,就是如果存在整數n和m,其中0 m b,使得a n b m,那麼a b a n b m.取模運算的兩個運算元都必須是整數,可以是負整數,但是b不可以是0,因為被除數不能為0嘛。當a和b中存在負整數時...

python怎麼取模 Python中的取模運算方法

所謂取模運算,就是計算兩個數相除之後的餘數,符號是 如a b就是計算a除以b的餘數。用數學語言來描述,就是如果存在整數n和m,其中0 m b,使得a n b m,那麼a b a n b m.取模運算的兩個運算元都必須是整數,可以是負整數,但是b不可以是0,因為被除數不能為0嘛。當a和b中存在負整數時...

python模運算求餘 取模運算和取餘運算

取模運算和取餘運算 取模運算 modulo operation 和取餘運算 complementation 兩個概念有重疊的部分但又不完全一致。主要的區別在於對負整數進行除法運算時操作不同。取模主要是用於 計算機術語中。取餘則更多是數學概念。模運算在數論和程式設計中 都有著廣泛的應用,從奇偶數的判別...