Fonction math.lcm() de Python

Python math 模块Module math de Python


En théorie des nombres,le plus petit commun multiple(Plus petit commun multiple, abrégé en PPCM) est un concept très important. Il est utilisé pour trouver le plus petit parmi les multiples communs de deux entiers ou plus.

math.lcm()est une fonction introduite dans Python 3.9, spécifiquement utilisée pour calculer leplus petit commun multiple (PPCM)。

Explication du terme: lcmest l'abréviation de « Plus Petit Commun Multiple », qui signifie « plus petit commun multiple ».


Syntaxe de base et paramètres

Format de syntaxe

import math

math.lcm(*integers)

Description du paramètre

  • Paramètre: *integers- Nombre variable d'entiers (au moins un)
  • Description: Les entiers pour lesquels calculer le plus petit commun multiple.

Valeur de retour

  • Renvoie le plus petit commun multiple de tous les entiers d'entrée
  • Si un seul entier est passé, renvoie la valeur absolue de cet entier
  • Si 0 est passé, renvoie 0

Exemples

Exemple 1: Utilisation de base - Calcul du PPCM de deux nombres

Exemple

import math

print("PPCM de 4 et 6:", math.lcm(4, 6))     # 12
print("PPCM de 5 et 7:", math.lcm(5, 7))     # 35
print("PPCM de 12 et 18:", math.lcm(12, 18)) # 36

# Vérifier la formule
a, b = 4, 6
print(f"\n"Vérification : PPCM({a}, {b}) = {a} * {b} / PGCD({a}, {b}) = {a*b//math.gcd(a,b)}")

Résultat de l'exécution :

4 和 6 的 LCM: 12
5 和 7 的 LCM: 35
12 和 18 的 LCM: 36

验证: LCM(4, 6) = 4 * 6 / GCD(4, 6) = 12

Exemple 2 : Calcul du PPCM de plusieurs nombres

Exemple

import math

print("PPCM de 3, 4, 5 :", math.lcm(3, 4, 5))    # 60
print("PPCM de 6, 8, 12 :", math.lcm(6, 8, 12))  # 24
print("PPCM de 2, 3, 4, 5 :", math.lcm(2, 3, 4, 5)) # 60

Résultat de l'exécution :

3, 4, 5 的 LCM: 60
6, 8, 12 的 LCM: 24
2, 3, 4, 5 的 LCM: 60

Exemple 3 : Traitement des valeurs spéciales

Exemple

import math

print("Entier unique 7 :", math.lcm(7))
print("PPCM de 0 et 5 :", math.lcm(0, 5))
print("PPCM de -4 et 6 :", math.lcm(-4, 6))

Résultat de l'exécution :

单个整数 7: 7
0 和 5 的 LCM: 0
-4 和 6 的 LCM: 12

Exemple 4 : Application pratique - Réduction de fractions à un dénominateur commun

Exemple

import math

# Addition de fractions : 1/4 + 1/6
denom1, denom2 = 4, 6
common_denom = math.lcm(denom1, denom2)
numer1 = 1 * (common_denom // denom1)
numer2 = 1 * (common_denom // denom2)
result = numer1 + numer2
print(f"1/{denom1} + 1/{denom2} = {numer1}/{common_denom} + {numer2}/{common_denom} = {result}/{common_denom}")

Résultat de l'exécution :

1/4 + 1/6 = 3/12 + 2/12 = 5/12

Exemple 5 : Application pratique - Synchronisation des cycles

Exemple

import math

# Les périodes de trois feux de circulation sont 30, 45 et 60 secondes
light_cycles = [30, 45, 60]
sync_interval = math.lcm(*light_cycles)
print(f"Périodes des feux de circulation : {light_cycles}")
print(f"Intervalle de temps pour passer au vert simultanément : {sync_interval} secondes")

Résultat de l'exécution :

信号灯周期: [30, 45, 60]
同时变绿的时间间隔: 180 秒

Relation avec le PGCD

Formule: PPCM(a, b) = a × b / PGCD(a, b)

Exemple

import math

for a, b in [(4, 6), (8, 12), (15, 20)]:
    lcm_val = math.lcm(a, b)
    gcd_val = math.gcd(a, b)
    print(f"LCM({a}, {b}) = {lcm_val}, GCD({a}, {b}) = {gcd_val}, Verify: {lcm_val * gcd_val} == {a*b} -> {lcm_val*gcd_val == a*b}")

Résultat de l'exécution :

LCM(4, 6) = 12, GCD(4, 6) = 2, 验证: 24 == 24 -> True
LCM(8, 12) = 24, GCD(8, 12) = 4, 验证: 96 == 96 -> True
LCM(15, 20) = 60, GCD(15, 20) = 5, 验证: 300 == 300 -> True

Notes

  • math.lcm()Disponible uniquement à partir de Python 3.9+
  • Les nombres négatifs sont calculés en utilisant leurs valeurs absolues
  • Le PPCM de 0 et de tout nombre est 0

Python math 模块Module math de Python

Autres extensions