math.gcd() și math.lcm() în Python

Numere și matematică Python 3.5+ (mai multe argumente și lcm: 3.9+)

Cel mai mare divizor comun și cel mai mic multiplu comun.

Sintaxă
math.gcd(*intregi)
math.lcm(*intregi)

Ce face math.gcd() și math.lcm()

gcd() returnează cel mai mare divizor comun (CMMDC), iar lcm() (Python 3.9+) cel mai mic multiplu comun (CMMMC). Din Python 3.9 ambele acceptă oricâte numere.

CMMDC simplifică fracții; CMMMC răspunde la întrebări de tipul „după câte zile se întâlnesc din nou două evenimente periodice”.

Parametri

Parametru Descriere
*intregi Numere întregi.

Ce returnează

Un int.

Exemple

Exemplul 1: Simplificare și evenimente periodice

import math
a, b = 84, 36
d = math.gcd(a, b)
print(d, f"{a}/{b} = {a // d}/{b // d}")
print(math.gcd(12, 18, 30), math.lcm(4, 6), math.lcm(3, 4, 10))
print("Autobuzele pleacă din nou împreună după", math.lcm(12, 20), "minute")

Rezultat

12 84/36 = 7/3
6 12 60
Autobuzele pleacă din nou împreună după 60 minute

Greșeli frecvente

  • Dai numere zecimale: math.gcd(4.0, 6) dă TypeError. Funcțiile lucrează doar cu întregi.

Comenzi înrudite

  • divmod(): Returnează deodată câtul întreg și restul împărțirii: (a // b, a % b).
  • as_integer_ratio(): Returnează numărul ca fracție exactă: perechea (numărător, numitor).