Inscription / Connexion Nouveau Sujet
Niveau Science du Numérique
Partager :

factorielle

Posté par
foq
29-12-21 à 20:03

Bonjour Madame et Monsieur .

J'aimerais votre aide si vous plait .

Définition :  la factorielle d'un entier naturel n est le produit des nombre entier strictement positifs inférieurs ou égaux à n .

La fonction ci-dessous factorrielleIterative prend comme paramètre un entier positive n et renvoie factorielle n .

def factorielleTterative(n):
    resultat=1
    for i in range(2,n+1):
        resultat= resultat*1
    return resultat


1) Développer cette fonction pour n=4 .

Moi j'ai fait juste
print(factorielleTterative(4))


2) Écrire une fonction factoriellerecursive qui permet de calculer factorielle n .

Moi j'ai fais ça :
def factoriellerecursivee(n):
    if pass : 
        pass 
    
    else  :
        pass
    
    return pass


Je sais que ça stucture sera comme ça mais je ne sais pas quoi mettre . Les
pass
,  c'est ce que je doit compléter .

Merci de votre aide .

Posté par
ty59847
re : factorielle 29-12-21 à 20:17

Developper cette fonction pour n=4
Je ne suis pas sûr, mais je pense qu'on te demande de 'dérouler' le programme. C'est à dire faire un tableau, où tu montres le contenu de toutes les variables de ce programme :
Au début  resultat =1 et i=2
Puis resultat =2
puis i=3
puis resultat =2*3=6
etc etc

Ensuite on demande de faire une fonction qu'ils ont appelée factoriellerecursive.
Une fonction récursive, c'est quoi ? C'est caractérisé comment ?

Et du coup, dans le squelette que tu as préparé, tu peux déjà boucher quelques trous.

Posté par
foq
re : factorielle 29-12-21 à 20:25

1) Je trouve 24 .

2)

def factoriellerecursivee(n):
    if n==1 : 
        return n 
    
    else  :
        return 

Posté par
ty59847
re : factorielle 29-12-21 à 22:58

Tu trouves 24 ... oui, mais ce n'était pas la question. Hors sujet.
Ce qu'on demande (d'aprés moi), c'est la liste de toutes les étapes intermédiaires du traitement.

Ensuite , je te demandais : Une fonction récursive, c'est quoi ? C'est caractérisé comment ?

Tu n'as pas répondu.

Posté par
foq
re : factorielle 30-12-21 à 11:43

Une fonction récursive c'est une fonction qui fait appel à elle même .
Dans une fonction récursive il y a le cas de bas et le  cas récursive .

1) 2*1=2
     3*2=6
     4*6=24

Posté par
ty59847
re : factorielle 30-12-21 à 12:11

Une fonction récursive c'est une fonction qui fait appel à elle même .
Oui.
Donc on devrait avoir quelque chose comme ça ....

def factoriellerecursivee(n):
    if pass :
        pass
    
    else  :
        ??? factoriellerecursivee(??)

Posté par
foq
re : factorielle 30-12-21 à 12:19

def factoriellerecursivee(n):
    if n==1 : 
        return 1 
    
    else  :
        return n * factoriellerecursivee(n-1)
        
print(factoriellerecursivee(4)) 

Posté par
ty59847
re : factorielle 30-12-21 à 12:22

oui.

Posté par
foq
re : factorielle 30-12-21 à 12:23

Merci de m'avoir aidé  .



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !