Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Module « math » Python 3.12.1

Fonction gcd - module math

Signature de la fonction gcd

 def gcd(*integers) -> int

Description

Cette fonction calcule le plus grand commun diviseur (PGCD) de l'ensemble des valeurs entières passées en paramètres. Cette fonction a évolué à partir de Python 3.9, pour accepter un nombre quelconque de valeurs : initialement, deux entiers étaient requis.

>>> import math
>>> math.gcd(10)
10
>>> math.gcd(10, 20)
10
>>> math.gcd(10, 20, 5)
5
>>> math.gcd(10, 20, 5, 2)
1
>>> 
le nom de la fonction, gcd, est un acronyme anglais signifiant Greatest Common Diviseur (plus grand commun diviseur, en français).

Si tous les paramètres sont fixés à 0 ou si aucun paramètre n'est passé à la fonction, alors la fonction renvoie 0.

>>> math.gcd()
0
>>> math.gcd(0, 0)
0
>>> 

help(math.gcd)

Greatest Common Divisor.

Paramètre

ParamètreDescription
 *integers : int... 
L'ensemble des valeurs entières pour lesquelles calculer le PGCD.

Valeur de retour

La valeur de retour est de type int.

Elle correspond au PGCD des valeurs entières spécifiées en paramètres. La fonction renvoie 0, si tous les paramètres sont fixés à 0 ou si auncun paramètre ne lui est passé.

Exception

Exemple(s) de code

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
import math

try:
    num = int(input("Veuillez saisir le numérateur : "))
    den = int(input("Veuillez saisir le numérateur : "))

    print(f"Rationnel initial : [{num}/{den}]")

    divisor = math.gcd(num, den)
    num //= divisor
    den //= divisor

    print(f"Rationnel simplifié : [{num}/{den}]")

except ValueError:
    # Exception déclenchée si vous saisissez n'importe quoi dans les inputs.
    print("On avait demandé des entiers :-(")
Exemple d'utilisation de la fonction gcd.

Et voici les résultats produits par cet exemple.

$> python3 sample.py
Veuillez saisir le numérateur : 11
Veuillez saisir le numérateur : 77
Rationnel initial : [11/77]
Rationnel simplifié : [1/7]
$> 

Existant depuis

Python 3.5