Calculer le factoriel des nombres tapés par l’utilisateur

Author:


{filelink=5521}

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import java.util.ArrayList;

import java.math.BigInteger;

public class FactorielUtilisateur
{

  protected static ArrayList table = new ArrayList();
  static
  {
    table.add(BigInteger.valueOf(1));
  }
    public static synchronized BigInteger factorial(int nombre)
  	{
    if (nombre < 0)
      throw new IllegalArgumentException("le nombre doit être superieur à 0.");
    for (int size = table.size(); size <= nombre; size++) {
      BigInteger dernierFact = (BigInteger) table.get(size - 1);
      BigInteger factSuivant = dernierFact.multiply(BigInteger.valueOf(size));
      table.add(factSuivant);
    }
    return (BigInteger) table.get(nombre);
  }

  public static void main(String[] args) throws IOException {
    // Initialiser un BufferedReader pour lire l'entrée clavier.
    BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
    // Boucle infinie
    for (;;) {

      System.out.print("Tapez un nombre>> ");
      // Lire la valeur tapée par l'utilisateur
      String line = in.readLine();
      // Verifier si l'utilisateur veut quitter l'application
      if ((line == null) || line.equals("terminer"))
      {
        System.out.println("Merci d'avoir utiliser le calculateur de Factoriel");
        break;
       }
      try
      {
		  // Verifier si l'utilisateur a taper un nombre
        int x = Integer.parseInt(line);
        System.out.println(x + "! = " + FactorielUtilisateur.factorial(x));
      }
      // Si l'entrée n'est pas un nombre, afficher une exception
      catch (Exception e)
      {
        System.out.println("Nombre invalid");
      }
    }
  }
}

A Voir sur le même Sujet:

  • boucle compteur factorielle c sharp
  • table de calcul factoriel
  • calcul factoriel avec la boucle for en java
  • calculer la factorielle d'un nombre entier choisi par l'utilisateur python
  • factoriel dans java avec arraylist
  • programmation python factoriel trouver le nombre de chiffres
  • factoriel java
  • code source de factoriel sur c sharp
  • java factiorielle() code
  • calcul du factoriel de 500 sur java

Leave a Reply

Your email address will not be published. Required fields are marked *