Ocena użytkownikóww: ***** / 3
Nadesłany przez Adam Chrapkowski, 05 grudnia 2013 01:14
Kod przedstawiony poniżej przedstawia główną część rozwiązania problemu.
Pobierz pełne rozwiązanie.nww.py:
# NWW (najmniejsza wspolna wielokrotnosc) dla zbioru liczb
# www.algorytm.org
from functools import reduce
#oblicza NWD (najwiekszy wspolny dzielnik) dla dwoch liczb
def gcd(a, b):
while b != 0:
b, a = a % b, b
return a
#oblicza NWW (najmniejsza wspolna wielokrotnosc) dla dwoch liczb
def lcm(a, b):
"""
lcm(3, 8) => 24
"""
return abs( a * b / gcd(a, b) )
#oblicza NWW (najmniejsza wspolna wielokrotnosc) dla listy liczb
def lcm_list(l):
"""
lcm_list([3, 4, 5, 6]) => 60
"""
return reduce(lcm, l, 1)