Algorithmique Exercice 6: utiliser une instruction iterative Construire un algorithme utilisant une instruction iterative (une boucle) qui, pour une valeur de N, calcule le produit P des entiers naturels de 1 à N ; c'est-à-dire, P=1x2x3x...xN.
Pouvez vous m'aider je n'arrive pas à le faire svp​


Sagot :

Réponse :

#définition de la fonction qui retourne le produit des entiers de 1 à n passer en paramètre

def factoriel(n) :

#initialisation de la variable p

   p = 1

# pour i allant de 1 à n (range définit l'interval [1;n+1[ pour les valeurs de i)

   for i in range (1,n+1) :

#p prend la valeur de p multiplier par i *

       p = p*i

#renvoi la valeur final de p

   return p

#affichage du résultat avec N = 5 (comme exemple)

print(factoriel(5))

* dans la boucle i va prendre les valeur de 1 puis de 2 puis de 3 ... jusqu'à n

on multiplie p par i et on enregistre le résultat dans p

première itération p= 1 ;i= 1 ;p*i = 1; donc à la fin du premier passage dans la boucle p est toujours égal à 1

deuxieme itération p=1 ; i=2 p*i = 2

donc à la fin du deuxième passage dans la boucle p est égal à 2

troixième itération p=2 ; i=3 p*i = 6

donc à la fin du deuxième passage dans la boucle p est égal à 6

et ainsi de suite