Opérations Numériques Fondamentales pour le Développement Algorithmique
Calcul du PGCD et du PPCM
Le plus grand commun diviseur (PGCD) de deux entiers s'obtient efficacement via l'algorithme d'Euclide. Une version itérative élimine les risques de débordement de pile tout en conservant une complexité logarithmique :
int calculer_PGCD(int val_a, int val_b) {
while (val_b != 0) {
int residu = val_b;
...
Publié le 13 septembre à 22h51
Recherche des puissances parfaites - Factorisation en nombres premiers
Problème : Trouver la valeur maximale de p telle que x = bp, où b est un entier. Par exemple, 25 = 52 et 64 = 26. L'entrée est x, la sortie est p.
La solutino repose sur la décomposition en facteurs premiers du nombre donné, followed par le calcul du PGCD des exposants.
Fonction de décomposition en facteurs premiers :
int facteurs[100];
int exp ...
Publié le 10 juillet à 04h10
Algorithmes fondamentaux et concepts mathématiques
Théorie des nombres
Algorithme d'Euclide pour le PGCD
Soient deux entiers positisf \(m,n\) avec \(m > n\). Le plus grand commun diviseur \(\gcd(m,n)\) satisfait la propriété \(\gcd(m,n) = \gcd(n, m \mod n)\).
Cette propriété permet de calculer le PGCD par réduction successive jusqu'à obtenir un reste nul.
def pgcd(a, b):
while b != 0:
...
Publié le 17 juin à 21h04