1. 程式人生 > 程式設計 >python的數學演算法函式及公式用法

python的數學演算法函式及公式用法

之前老是跟大家說看久了Python,總感覺就像是很多的數學公式運算,大家一致覺得只是一點點像,那今天跟大家直接就說下叫“數學”演算法的內容,這樣大家再來品鑑下,是不是可以貫通使用的內容呢?話不多說了,一起來了解下吧~

數學運算方法

除了上面的基礎算術運算子,還支援很多數值型別的運算子,例如:取反(~)、位移(>>)、位與(&)、位異或(^)、邏輯與(and)、邏輯或(or)。

除此之外,還有幾個python的內建數學函式:

  • pow():求冪
  • abs():求絕對值
  • round():四捨五入
  • int():取整(截去小數部分)
  • float():轉換成浮點數
  • oct():十進位制整數轉換成八進位制
  • hex():十進位制整數轉換成十六進位制整數
  • bin():十進位制整數轉換成二進位制

在Python裡還有專門因為數學而創造出來的模組,因此,大家在學習python之前肯定也是經歷過數學階段的吧

python數學演算法題舉例

斐波那契數列

# 斐波那契數列
sum = 0
num = 1
i = 0
while i < 10:
  nth = sum + num
  print(nth,end=",")
  # 更新值
  sum = num
  num = nth
  i+= 1
 
結果:
1,2,3,5,8,13,21,34,55,89

阿姆斯特朗數

# 如果一個n位正整數等於其各位數字的n次方之和,則稱該數為阿姆斯特朗數。 例如1^3 + 5^3 + 3^3 = 153。
# 1000以內的阿姆斯特朗數: 1,4,6,7,9,153,370,371,407。
sum = int(input("輸入一個數"))
sumlen = len(str(sum))
sumNum = 0
for i in str(sum):
  sumNum +=int(i) ** sumlen
if sum == sumNum:
  print("這個數的阿姆斯特郎數")
else:
  print("不是阿姆斯特郎數")
 
sums = int(input("請輸入要查詢到多少的阿姆斯特郎數"))
sum = 0
while True:
  num = 0
  n = len(str(sum))
  for i in str(sum):
    num += int(i)**n
  if sum == num:
    print("%d\t這是個阿姆斯特朗數"%sum)
  if sum >sums:
    break
  sum +=1

到此這篇關於python的數學演算法函式及公式用法的文章就介紹到這了,更多相關python的數學演算法詳解內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!