欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python基于遞歸算法求最小公倍數和最大公約數示例

 更新時間:2018年07月27日 11:30:56   作者:混沌鱷魚  
這篇文章主要介紹了Python基于遞歸算法求最小公倍數和最大公約數,結合實例形式分析了Python使用遞歸算法進行數值計算的相關操作技巧,需要的朋友可以參考下

本文實例講述了Python基于遞歸算法求最小公倍數和最大公約數。分享給大家供大家參考,具體如下:

# 最小公倍數
def lcm(a, b, c=1):
  if a * c % b != 0:
    return lcm(a, b, c+1)
  else:
    return a*c
test_cases = [(4, 8), (35, 42), (5, 7), (20, 10)]
for case in test_cases:
  print('lcm of {} & {} is {}'.format(*case, lcm(*case)))
def lcm(a, b):
  for i in range(2, min(a,b)+1):
    if a % i == 0 and b % i == 0:
      return i * lcm(a//i, b//i)
  else:
    return a*b
test_cases = [(4, 8), (5, 7), (24, 16), (35, 42)]
for case in test_cases:
  print('lcm of {} & {} is {}'.format(*case, lcm(*case)))
# 最大公約數
def gcd(a, b):
  if a == b:
    return a
  elif a-b > b:
    return gcd(a-b, b)
  else:
    return gcd(b, a-b)
test_cases = [(35, 14), (88, 66), (5, 4), (20, 10)]
for case in test_cases:
  print('GCD of {} & {} is {}'.format(*case, gcd(*case)))

運行結果:

lcm of 4 & 8 is 8
lcm of 35 & 42 is 210
lcm of 5 & 7 is 35
lcm of 20 & 10 is 20
GCD of 35 & 14 is 7
GCD of 88 & 66 is 22
GCD of 5 & 4 is 1
GCD of 20 & 10 is 10

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

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

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

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

相關文章

  • python之如何查找多層嵌套字典的值

    python之如何查找多層嵌套字典的值

    這篇文章主要介紹了python之如何查找多層嵌套字典的值問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 用Python中的wxPython實現最基本的瀏覽器功能

    用Python中的wxPython實現最基本的瀏覽器功能

    這篇文章主要介紹了用Python中的wxPython實現基本的瀏覽器功能,本文來自于IBM官方網站開發(fā)者文檔,需要的朋友可以參考下
    2015-04-04
  • 利用Python學習RabbitMQ消息隊列

    利用Python學習RabbitMQ消息隊列

    RabbitMQ和郵局的主要區(qū)別就是RabbitMQ接收、存儲和發(fā)送的是二進制數據----消息,本篇文章給大家介紹利用Python學習RabbitMQ消息隊列,對python消息隊列相關知識感興趣的朋友參考下
    2015-11-11
  • Python3 串口接收與發(fā)送16進制數據包的實例

    Python3 串口接收與發(fā)送16進制數據包的實例

    今天小編就為大家分享一篇Python3 串口接收與發(fā)送16進制數據包的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python中使用asyncio 封裝文件讀寫

    Python中使用asyncio 封裝文件讀寫

    本文主要給大家簡單講解如何用 asyncio.Future 對象來封裝文件的異步讀寫。有需要的小伙伴可以參考下
    2016-09-09
  • Python中字符串格式化str.format的詳細介紹

    Python中字符串格式化str.format的詳細介紹

    python從2.6開始支持format,新的更加容易讀懂的字符串格式化方法,下面這篇文章主要介紹了Python中字符串格式化str.format的相關資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-02-02
  • python sklearn包——混淆矩陣、分類報告等自動生成方式

    python sklearn包——混淆矩陣、分類報告等自動生成方式

    今天小編就為大家分享一篇python sklearn包——混淆矩陣、分類報告等自動生成方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • 如何用python合并多個有規(guī)則命名的nc文件

    如何用python合并多個有規(guī)則命名的nc文件

    在地學領域,nc格式的文件可謂隨處可見,這種文件可以存儲多維數字矩陣,下面這篇文章主要給大家介紹了關于如何用python合并多個有規(guī)則命名的nc文件的相關資料,需要的朋友可以參考下
    2022-03-03
  • Python實現將絕對URL替換成相對URL的方法

    Python實現將絕對URL替換成相對URL的方法

    這篇文章主要介紹了Python實現將絕對URL替換成相對URL的方法,涉及Python字符串操作及正則匹配的相關技巧,需要的朋友可以參考下
    2015-06-06
  • python 利用jinja2模板生成html代碼實例

    python 利用jinja2模板生成html代碼實例

    這篇文章主要介紹了python 利用jinja2模板生成html代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-10-10

最新評論