👤

Bonjour tout le monde, pourrez vous m'aider dans cette exercice. Je ne comprend vraiment Python. À répondre le plus rapidement svp...

a. Que renvoie pg_div(25,15) ?


b. Que renvoie pg_div(48,32) ?

c. En utilisant cette fonction, écrire un programme en Python qui demande à l'utilisateur le numérateur n et le dénominateur p d'une fraction positive (n et p sont deux nombres entiers naturels,p non nul) et qui affiche la forme irréductible de cette fraction.

Cliquer sur la photo pour voir le Programme.​


Bonjour Tout Le Monde Pourrez Vous Maider Dans Cette Exercice Je Ne Comprend Vraiment Python À Répondre Le Plus Rapidement Svpa Que Renvoie Pgdiv2515 B Que Renv class=

Répondre :

Bonjour,

a)

pg_div(25, 15) => a = 25 et b = 15

d = 1

Tant que d est différent de 0:

  d = 1 #On entre dans la boucle

      d = a - b = 25 - 15 = 10

      Si d < b: 10 < 15: Vrai, on entre dans le bloc

         a = b = 15

         b = d = 10

   d = 10 #On reste dans la boucle

       d = a - b = 15 - 10 = 5

       Si 5 < 10: Vrai

         a = b = 10

         b = d = 5

   d = 5 #On reste dans la boucle

       d = a - b = 10 - 5 = 5

       Si 5 < 5: Faux, on rentre dans le "Esle" = Sinon

         a = d = 5

   d = 5 #On reste dans la boucle

       d = a - b = 5 - 5 = 0

       Si 0 < 5: Vrai

         a = b = 5

         b = d = 0

Fin du Tant que car d = 0

Retourne la valeur de a donc 5

pg_div(25, 15) renvoie 5.

b)

De la même façon, on trouve pg_div(48, 32) renvoie 16.

En fait, pg_div(a, b) renvoie le plus grand diviseur commun entre a et b.

25/15 = (5 x 5) / (5 x 3) = 5/3

48/32 = (16 x 3) / (16 x 2) = 3/2

On obtient les fractions irréductibles.

c)

n = int(input("Numérateur = "))

p = int(inpu("Dénominateur = "))

pg = pg_div(n, p) #On récupère le plus grand diviseur commun.

print("{}/{}".format(n//pg, p//pg)) #On utilise // pour faire des divisions entières.

Bonne journée.