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

首頁 > 編程 > Python > 正文

Python實現的求解最小公倍數算法示例

2020-02-22 23:58:39
字體:
來源:轉載
供稿:網友

本文實例講述了Python實現的求解最小公倍數算法。分享給大家供大家參考,具體如下:

簡單分析了一下,前面介紹的最大公約數的求解方法跟最小公倍數求解方法類似,只需要改一個簡單的條件,然后做一點簡單的其他計算。問題的解決也是基于分解質因式的程序。

程序實現以及測試case代碼如下:

#!/usr/bin/pythonfrom collections import Counterdef PrimeNum(num):  r_value =[]  for i in range(2,num+1):   for j in range(2,i):     if i % j == 0:      break   else:     r_value.append(i)  return r_valuedef PrimeFactorSolve(num,prime_list):  for n in prime_list:   if num % n == 0:     return [n,num / n]def PrimeDivisor(num):  num_temp =num  prime_range= PrimeNum(num)  ret_value =[]  while num not 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 LeastCommonMultiple(num1,num2):  dict1 =PrimeDivisor(num1)  dict2 =PrimeDivisor(num2)  least_common_multiple= 1  for key in dict1:   if key in dict2:     if dict1[key] > dict2[key]:      least_common_multiple*= (key ** dict1[key])     else:      least_common_multiple*= (key ** dict2[key])  for key in dict1:   if key not in dict2:     least_common_multiple*= (key ** dict1[key])  for key in dict2:   if key not in dict1:     least_common_multiple*= (key ** dict2[key])  return least_common_multipleprint(LeastCommonMultiple(12,18))print(LeastCommonMultiple(7,2))print(LeastCommonMultiple(7,13))print(LeastCommonMultiple(24,56))print(LeastCommonMultiple(63,81))

程序執行結果:

E:/WorkSpace/01_編程語言/03_Python/math>pythonleast_common_multiple.py
36
14
91
168
567

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

PS:這里再為大家推薦一款本站相關在線工具供大家參考:

在線最小公倍數/最大公約數計算工具:
http://tools.jb51.net/jisuanqi/gbs_gys_calc

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數學運算技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平遥县| 无极县| 平乐县| 顺义区| 临潭县| 那曲县| 开远市| 镇赉县| 荃湾区| 微山县| 衡东县| 三门峡市| 安康市| 井陉县| 论坛| 兴义市| 郯城县| 花莲市| 铜梁县| 江源县| 新营市| 新昌县| 金塔县| 威海市| 滦南县| 鄂托克前旗| 龙岩市| 桐梓县| 留坝县| 和政县| 岐山县| 平远县| 五莲县| 图木舒克市| 扎兰屯市| 巴林右旗| 淮阳县| 拉孜县| 九龙城区| 伊吾县| 开阳县|