Calculer n!

Résolu
Naji_El_khomssi Messages postés 13 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -
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. KX Messages postés 19031 Statut Modérateur 3 020
     
    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. Naji_El_khomssi Messages postés 13 Statut Membre
       
      Dabord Mrc ^^
      j pas bien compris l'énoncé, qu'est ce qu'il demande exactement ?!
      0
    2. blux Messages postés 5035 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Salut,

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

      Le cas 'classique' de la programmation récursive.
      0
    3. KX Messages postés 19031 Statut Modérateur 3 020 > Naji_El_khomssi Messages postés 13 Statut Membre
       
      "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. ElementW Messages postés 5690 Statut Contributeur 1 293 > blux Messages postés 5035 Date d'inscription   Statut Modérateur Dernière intervention  
       
      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. KX Messages postés 19031 Statut Modérateur 3 020 > ElementW Messages postés 5690 Statut Contributeur
       
      La 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. Naji_El_khomssi Messages postés 13 Statut Membre
     
    voila le truc :
    int S=1;
    for (int i=1;i<=n;i++)
    S=S*i;
    0
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      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