Le triangle de pascal.

Fermé
ilyan174 - Modifié le 17 déc. 2019 à 18:10
M3NSONG3 Messages postés 615 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 4 novembre 2021 - 24 déc. 2019 à 12:10
Bonjour à tous, j'ai un code à faire sur le triangle de pascal et les consignes sont les suivantes :

- Vous devez écrire une fonction factorielle(). Elle prend en paramètre un entier n quelconque et retourne la factorielle de cet entier (n!).

- Écrire une fonction parmi() qui prend en paramètre des nombres entiers i et j et retourner "j parmi i".
On sait que : "j parmi i" = i! / (j!×(i−j)!)

- Écrire une fonction chaine_triangle_Pascal() qui prend n comme paramètre et qui renvoie une chaîne de caractère chaine.

Je ne comprend pas pourquoi dans mon code : on m'explique que la syntaxe est invalide dans la ligne 2 et 3. Je n'ai pour l'instant fait que le premier tiret. Pourriez vous m'aider ? Merci beaucoup !!


def factorielle(n):
  n=input("Entrez un nombre entier")
  return n!


Configuration: Windows / Chrome 79.0.3945.79
A voir également:

5 réponses

CrazyGeekMan Messages postés 871 Date d'inscription dimanche 1 novembre 2015 Statut Membre Dernière intervention 29 octobre 2022 131
17 déc. 2019 à 18:22
Bonsoir,

Le signe ! est intégré au langage python ?
0
oui !
0
CrazyGeekMan Messages postés 871 Date d'inscription dimanche 1 novembre 2015 Statut Membre Dernière intervention 29 octobre 2022 131 > ilyan174
17 déc. 2019 à 20:54
Mauvaise réponse.
Une petite recherche te suffirait pour répondre à ta question ! http://python.jpvweb.com/python/mesrecettespython/doku.php?id=factorielle

Bien évidemment que ce n'est pas la meilleure façon d'apprendre un langage, d'abord on coince et on réfléchit, si on sèche complètement on fait une recherche.

Bonne soirée
0
yg_be Messages postés 22720 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 23 avril 2024 1 476
Modifié le 17 déc. 2019 à 19:47
bonjour, où as-tu lu que tu pouvais ainsi utiliser le point exclamation en python?
par ailleurs, pourquoi la ligne 2?
est-ce ton premier exercice en python?
0
Ce n'est pas mon premier exercice en python mais mon professeur à écrit la consigne telle qu'elle alors il se peut que j'ai confondu le n! avec une phrase exclamative...
0
Bonsoir,

- Vous devez écrire une fonction factorielle(). Elle prend en paramètre un entier n quelconque et retourne la factorielle de cet entier (n!).

A ton niveau, tu devrais tout de même savoir comment se calcule la factorielle d'un nombre.

Et au cas où --> https://fr.wikipedia.org/wiki/Factorielle
0
ccm81 Messages postés 10853 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 24 avril 2024 2 404
Modifié le 23 déc. 2019 à 16:41
Bonjour

Tu devrais commencer par séparer ton programme principal (qui va utiliser ta fonction) et l'implémentation de ta fonction

def facto(n):
    .... à toi d'écrire le code qui calcule fff
    return fff

# programme principal
n = int(input("donner un entier n :  "))
f = facto(n)
print("factorielle ", n, " = ", f)


Cdlmnt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
M3NSONG3 Messages postés 615 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 4 novembre 2021 162
24 déc. 2019 à 02:12
Désolé, je tombe sur le sujet un peu tard, mais comme personne n'a vraiment donné de solution... Je me permet de t'apporter une aide, qui pourra peut-être aider d'autres personnes après... Qui sait ?

Tu as deux grandes méthodes de le faire :
- Une fonction récursive, c'est à dire une fonction qui va s'appeler elle même, dans ce cas il faut revenir à la définition de la factorielle et on retrouve vite la solution :
0! = 1
n! = n*(n-1)!

-Une boucle qui marchera sensiblement de la même façon...

Bonne chance et désolé de répondre si tard.
0
Bonjour,

On utilise la récursivité que lorsqu'on n'a pas d'autre choix, ici il n'y a AUCUN intérêt à utiliser une récursivité alors qu'une bête boucle for fait le job.
0
M3NSONG3 Messages postés 615 Date d'inscription mardi 16 avril 2013 Statut Membre Dernière intervention 4 novembre 2021 162 > trifou
24 déc. 2019 à 12:10
J'ai précisé les deux, car c'est pas rare de voir des profs demander de faire des fonctions récursives pour aborder le principe... Mais je suis bien d'accord avec toi, et j'aurais dû préciser d'utiliser la boucle si il n'y a aucune contre-indication !
Merci.
0