IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Prog pour calculer la factorielle d'un nombre


Sujet :

Langage Java

  1. #1
    Membre régulier Avatar de Lenezir
    Inscrit en
    Février 2006
    Messages
    129
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Février 2006
    Messages : 129
    Points : 89
    Points
    89
    Par défaut Prog pour calculer la factorielle d'un nombre
    Salut à tous ^^
    Je suis bloqué sur un programme.
    Je dois faire un programme permettant de calculer la factorielle d'un nombre mais ça ne marche pas.
    Voici le code que j'ai tapé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    public class Factor
    	{
    		public static void main(String args[])
    			{
    				int nbentre;
    				int nbcourant;
    				int factorielle;
    				nbentre=1;
    				nbcourant=nbentre;
    				factorielle=1;
    				System.out.print("Entrez la factorielle souhaitee : ");
    				nbentre=Lire.i();
    				for (nbcourant=nbentre; nbcourant==1; nbcourant--)
    					{
    						factorielle=(nbcourant*(nbcourant-1));
    					}
    				System.out.print("La factorielle de "+ nbentre+" est "+ factorielle);
    			}
    	}
    Pourriez-vous m'aider ?
    Merci ^^

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 230
    Points : 310
    Points
    310
    Par défaut
    Bonjour,

    Ta boucle for est étrange :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (nbcourant=nbentre; nbcourant==1; nbcourant--)
    J'aurais plutôt écris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for (nbcourant=nbentre; nbcourant>1; nbcourant--)
    (voir nbcourant>2 parce que la multiplication par 1 ne sert à rien).

  3. #3
    Membre averti
    Inscrit en
    Janvier 2006
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 257
    Points : 308
    Points
    308
    Par défaut
    Tient un petit truc que j'avais fait dans ma jeunesse ... MDR
    cela te permet de calcul des factorielles de grands nombres

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public BigInteger fact(double i) {
    	 //-- BigInteger solution.
        BigInteger n = BigInteger.ONE;
        for (int j=1; j<=i; j++) {
            n = n.multiply(BigInteger.valueOf(j));
            System.out.println(j + "! = " + n);
        }
        //System.out.println("i!="+n);
        if (i==0) return BigInteger.ONE; else return n;    
     
    }
    sinon pourquoi faire simple quand on peut faire compliqué tu a cas faire la boucle dans le sens positif :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public double fact(double n) {
     
    privat double resultat
     
    //pas oublier le cas particulier fact(0)=1;
    resultat = 1;
    for (double i =1; i<=n;i++) {
    resultat = resultat * i;
    }
     
    }

Discussions similaires

  1. Calculer le factorielle d'un nombre (Dev-C++)
    Par Matadox dans le forum Débuter
    Réponses: 9
    Dernier message: 03/02/2014, 00h51
  2. Calculer la factorielle d'un nombre en C
    Par planete.game57 dans le forum Débuter
    Réponses: 26
    Dernier message: 19/10/2009, 23h12
  3. Algorithmes pour calculer la factorielle
    Par TrexXx dans le forum Mathématiques
    Réponses: 14
    Dernier message: 22/01/2009, 23h32
  4. script samba qui calcule le factoriel d'un nombre entier
    Par miryam22 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 30/05/2008, 10h00
  5. Calcul de la factorielle d'un nombre naturel
    Par Sadgunner dans le forum Pascal
    Réponses: 9
    Dernier message: 20/06/2006, 21h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo