成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何使用Python實現(xiàn)求解最大公約數(shù)算法-創(chuàng)新互聯(lián)

這篇文章主要介紹了如何使用Python實現(xiàn)求解大公約數(shù)算法,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

成都創(chuàng)新互聯(lián)專注于昌黎企業(yè)網(wǎng)站建設,自適應網(wǎng)站建設,商城網(wǎng)站建設。昌黎網(wǎng)站建設公司,為昌黎等地區(qū)提供建站服務。全流程按需定制,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務

具體如下:

使用Python求解兩個數(shù)的大公約數(shù)的時候用到了前面介紹的分解質因式。其實,我寫分解質因式程序的時候就是因為發(fā)現(xiàn)在實現(xiàn)大公約數(shù)求解的過程中用到了這個功能。

比較令我開心的是之前學的一點Python集合處理功能居然在這個時候也派上了用場,小程序的完成讓人感覺比較舒心。

代碼實現(xiàn)如下:

#!/usr/bin/python
from collections import Counter
def PrimeNum(num):
  r_value =[]
  for i inrange(2,num+1):
   for jin range(2,i):
     if i % j == 0:
      break
   else:
     r_value.append(i)
  return r_value
def PrimeFactorSolve(num,prime_list):
  for n inprime_list:
   if num % n == 0:
     return [n,num / n]
def PrimeDivisor(num):
  num_temp =num
  prime_range= PrimeNum(num)
  ret_value =[]
  while numnot in prime_range:
   factor_list= PrimeFactorSolve(num,prime_range)
   ret_value.append(factor_list[0])
   num =factor_list[1]
  else:
   ret_value.append(num)
  return Counter(ret_value)
def MaxDivisor(num1,num2):
  dict1 =PrimeDivisor(num1)
  dict2 =PrimeDivisor(num2)
  max_divisor= 1
  for key1 indict1:
   if key1 in dict2:
     if dict1[key1] < dict2[key1]:
      max_divisor*= (key1 ** dict1[key1])
     else:
      max_divisor*= (key1 ** dict2[key1])
  return max_divisor
print(MaxDivisor(12,18))
print(MaxDivisor(7,2))
print(MaxDivisor(7,13))
print(MaxDivisor(24,56))
print(MaxDivisor(63,81))

程序的執(zhí)行結果如下:

E:\WorkSpace\01_編程語言\03_Python\math>python max_divisor.py
6
1
1
8
9

通過驗證,計算結果準確。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“如何使用Python實現(xiàn)求解大公約數(shù)算法”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!

分享標題:如何使用Python實現(xiàn)求解最大公約數(shù)算法-創(chuàng)新互聯(lián)
分享鏈接:http://jinyejixie.com/article26/jiicg.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設、商城網(wǎng)站面包屑導航、搜索引擎優(yōu)化、靜態(tài)網(wǎng)站、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
三原县| 凤冈县| 通州市| 巴林左旗| 海安县| 清远市| 加查县| 沙湾县| 扎鲁特旗| 彝良县| 荣昌县| 广宁县| 师宗县| 察隅县| 彝良县| 太康县| 岱山县| 南汇区| 五原县| 商洛市| 梧州市| 海安县| 萨迦县| 大关县| 泰州市| 鹤庆县| 芮城县| 上思县| 麦盖提县| 越西县| 乐清市| 三原县| 鄂托克前旗| 深水埗区| 康马县| 拜城县| 凤台县| 大悟县| 延安市| 宽甸| 邯郸县|