知恵袋の最大公約数・最小公倍数の問題をPythonで解いてみました。(^_^;
n,125,175の最大公約数が25,最小公倍数が3500をみたす自然数nを求めよ。
nの範囲は、25≦n≦3500で、あとは、3数のgcdとlcmを求めてチェックするだけです。(^_^;
● GcdAndLcm1.py
# coding: UTF-8 # GcdAndLcm1.py from functools import reduce from fractions import gcd def Gcd(numbers): return reduce(gcd,numbers) def Lcm(numbers): return reduce(lambda x,y: (x*y)//gcd(x,y),numbers,1) def main(): pass # code goes here for n in range(25,3500+1): lst=[n,125,175] if Gcd(lst)==25 and Lcm(lst)==3500: print(n) if __name__ == '__main__': main()
●実行結果
100 500 700 3500
※参考URL
http://d.hatena.ne.jp/rsc96074/20140127/1390834236
●RiK0 Tech Temple: Nice functional LCM in Python
- 作者: 辻真吾
- 出版社/メーカー: 技術評論社
- 発売日: 2010/04/24
- メディア: 大型本
- 購入: 19人 クリック: 199回
- この商品を含むブログ (59件) を見る