日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

程序员数学基础【四、取模应用-判断奇偶数、判断素数、求两个数的最大公约数、水仙花数】(Python版本)

發布時間:2024/8/26 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序员数学基础【四、取模应用-判断奇偶数、判断素数、求两个数的最大公约数、水仙花数】(Python版本) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

測試使用語言:【Python】

由于此類語言入門非常容易,哪怕初中生亦可以,并且本科/研究生寫論文、做實驗多數所用語言都是【Python】故而選擇此語言。

代碼運行平臺:【win10 x64】
代碼環境安裝:【https://blog.csdn.net/feng8403000/article/details/113784766】
代碼編碼格式:【https://blog.csdn.net/feng8403000/article/details/113785344】

完整的vs搭建并使用【Python】,非常簡單,基礎部分無需任何環境配置,工具自帶即可。

前言:

模運算在數論和程序設計中都有著廣泛的應用,奇偶數的判別到素數的判別,從模冪運算到最大公約數的求法,從孫子問題到凱撒密碼問題,無不充斥著模運算的身影。雖然很多數論教材上對模運算都有一定的介紹,但多數都是以純理論為主,對于模運算在程序設計中的應用涉及不多。那么今天我們就用幾個案例來試試:

1、判斷奇偶數:

奇數(英文:odd),正奇數又稱單數,?整數中,能被2整除的數是bai偶數,不能被2整除的數是奇數,奇數的個位為1,3,5,7,9。偶數可用2k表示,奇數可用2k+1表示,這里k就是整數。

偶數是能夠被2所整除的整數。正偶數也稱雙數。若某數是2的倍數,它就是偶數,可表示為2n;若非,它就是奇數,可表示為2n+1(n為整數),即奇數除以二的余數是一。

0是一個特殊的偶數。它既是正偶數與負偶數的分界線,又是正奇數與負奇數的分水嶺。

while True:x=int(input("請輸入一個整數:\n"))if x%2==0:print(x,"是偶數")else:print(x,"是奇數")

2、判斷素數:

質數又稱素數。一個大于1的自然數,除了1和它自身外,不能被其他自然數整除的數叫做質數;否則稱為合數(規定1既不是質數也不是合數)。

while True:x = int(input("請輸入一個整數:\n"))isf = Truefor j in range(2,x):#排除1和本身,所以是從2開始到x,而不是1到x+1if x % j == 0:isf = Falseif isf:print(x,"是素數")else:print(x,"不是素數")

3、求兩個數的最大公約數:(輾轉相除法)

最大公因數,也稱最大公約數、最大公因子,指兩個或多個整數共有約數中最大的一個。a,b的最大公約數記為(a,b),同樣的,a,b,c的最大公約數記為(a,b,c),多個整數的最大公約數也有同樣的記號。求最大公約數有多種方法,常見的有質因數分解法、短除法、輾轉相除法、更相減損法。與最大公約數相對應的概念是最小公倍數,a,b的最小公倍數記為[a,b]。

while True:x = int(input("請輸入第一個整數:\n"))y = int(input("請輸入第二個整數:\n"))one=xtwo=ymax=1#利用輾轉相除法while True:max=one%twoif max == 0:breakelse:one=twotwo=maxprint("{0}是{1}與{2}的最大公約數".format(two,x,y))

4、求所有3位數的水仙花數(窮舉法)

水仙花數(Narcissistic number)也被稱為超完全數字不變數(pluperfect digital invariant, PPDI)、自戀數、自冪數、阿姆斯壯數或阿姆斯特朗數(Armstrong number),水仙花數是指一個 3 位數,它的每個位上的數字的 3次冪之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。

注:必須使用【//除法取整】而不是【/除法】

for x in range(100,1000):one=x//100two=x//10%10three=x%10if one**3 + two**3 + three**3 ==x:print(x,"是水仙花數")

?

下篇內容為:【程序員數學基礎【五、math庫常用函數】(Python版本)】:【https://blog.csdn.net/feng8403000/article/details/114198523】

萬丈高樓平地起,程序員數學基礎,從小學的【什么是數學】至【離散數學】(主要是圖論)咱們一步步成長,共同加油。

總結

以上是生活随笔為你收集整理的程序员数学基础【四、取模应用-判断奇偶数、判断素数、求两个数的最大公约数、水仙花数】(Python版本)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。