Calculer n!

Résolu
Bonjour, un peu d'aide svp et merci d'avance ^^

Ecrire une methode en java qui prend en entrée un entier n et qui calcule n!

2 réponses

  1. Modérateur
    Bonjour,

    Ok pour t'aider (même si c'est fait, fait et refait sur le forum).

    C'est quoi le problème ?
    0
    1. Dabord Mrc ^^
      j pas bien compris l'énoncé, qu'est ce qu'il demande exactement ?!
      0
    2. Modérateur
      Salut,

      c'est un calcul de factorielle, tout simplement...

      Le cas 'classique' de la programmation récursive.
      0
    3. Modérateur
      @Naji_El_khomssi"qu'est ce qu'il demande exactement ?"

      La factorielle est une fonction mathématiques élémentaire qui calcule le produit de tous les nombres de 1 à n.

      Exemple : 5! = 1 x 2 x 3 x 4 x 5 = 120

      Ce qu'on te demande c'est donc de faire la méthode qui permet de calculer la valeur en fonction du paramètre n que tu lui donnes.

      Par exemple avec 5 on s'attends à ce que tu renvoie 120.
      0
    4. Contributeur
      @blux
      Le cas 'classique' de la programmation récursive.
      Récursive ou non d'ailleurs; la factorielle peut se calculer sans récursion assez simplement.
      0
    5. Modérateur
      @ElementWLa factorielle est un sujet d'études très intéressant. Simple exercice de débutants au premier abord, il peut devenir tout de suite plus complexe si on y regarde de plus près.
      0
  2. voila le truc :
    int S=1;
    for (int i=1;i<=n;i++)
    S=S*i;
    0
    1. Modérateur
      Quelques remarques :

      1) Ce que l'on te demandait c'était une méthode Java, pas juste un bout de code, il te manque donc la structure de la méthode.
      2) Les conventions de nommages en Java veulent que les variables soient en minuscules, de plus ça ne coûte pas grand chose de leur donner un nom explicite, S me fait penser à une somme alors que c'est un produit que tu calcules...
      3) Le résultat n'est correct que pour n entre 0 et 12, il serait intéressant soit de traiter plus de cas, soit d'envoyer une erreur pour éviter que l'utilisateur ne pense avoir le bon résultat alors qu'il est faux. Tu n'as qu'à regarder n=13 et n=14, avec ton code on a 14! < 13! ...
      0