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 PHP Discussion :

JAVA & PHP : Calcul Factoriel


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    fffffff
    Inscrit en
    Octobre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : fffffff

    Informations forums :
    Inscription : Octobre 2006
    Messages : 2
    Points : 4
    Points
    4
    Par défaut JAVA & PHP : Calcul Factoriel
    Bonjour,
    Pour ce qui débute la programmation, je vous demande d'exécuter les codes PHP et JAVA pour le factoriel d'un nombre.

    CODE PHP : FactorialCalculator.php
    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
    20
     
    <?php
     
      class FactorialCalculator
      {                 
         public function factorial( $number )            
         {                                               
            if ( $number <= 1 ) 
               return 1; 
            else 
               return $number * $this->factorial( $number - 1 );  
         } 
     
         public function displayFactorials()
         {
            for ( $counter = 0; $counter <= 20; $counter++ )
               printf( "%d! = %d\n", $counter, $this->factorial( $counter ) );
         } 
      } 
    ?>
    Pour l'exécution du CODE PHP : FactorialTest.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
    require_once(dirname(__FILE__).'/FactorialCalculator.php');
    $factorialCalculator = new FactorialCalculator();
    $factorialCalculator->displayFactorials();
    ?>
    Résultats de l'exécution en ligne de commande
    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
    20
    21
    22
    23
     
    php FactorialTest.php
    0! = 1
    1! = 1
    2! = 2
    3! = 6
    4! = 24
    5! = 120
    6! = 720
    7! = 5040
    8! = 40320
    9! = 362880
    10! = 3628800
    11! = 39916800
    12! = 479001600
    13! = 1932053504
    14! = 1278945280
    15! = 2004310016
    16! = 2004189184
    17! = -288522240
    18! = -898433024
    19! = 109641728
    20! = -2102132736

    CODE JAVA : FactorialCalculator.java
    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
     
      public class FactorialCalculator
      {
     
         public long factorial( long number )            
         {                                               
            if ( number <= 1 ) 
               return 1; 
            else 
               return number * factorial( number - 1 );  
         } 
     
         public void displayFactorials()
         {
            for ( int counter = 0; counter <= 20; counter++ )
               System.out.printf( "%d! = %d\n", counter, factorial( counter ) );
         } 
      }
    Pour l'exécution du CODE JAVA: FactorialTest.java
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public class FactorialTest
     {
          public static void main( String args[] )
          {
             FactorialCalculator factorialCalculator = new FactorialCalculator();
            factorialCalculator.displayFactorials();
         } 
      }
    Compilation CODE JAVA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    javac FactorialCalculator.java
    javac FactorialTest.java
    Résultats de l'exécution en ligne

    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
    20
    21
    22
    23
     
    java FactorialTest
    0! = 1
    1! = 1
    2! = 2
    3! = 6
    4! = 24
    5! = 120
    6! = 720
    7! = 5040
    8! = 40320
    9! = 362880
    10! = 3628800
    11! = 39916800
    12! = 479001600
    13! = 6227020800
    14! = 87178291200
    15! = 1307674368000
    16! = 20922789888000
    17! = 355687428096000
    18! = 6402373705728000
    19! = 121645100408832000
    20! = 2432902008176640000

    Remarque : Les deux codes sont exécutés sur une même machine debian 4.0. Version PHP : 5.2.9

    Question : Pourquoi cette différence de résultats ?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Un extrait de la documentation :
    La taille d'un entier est dépendant de la plate-forme, cependant, une valeur maximale d'environ 2 milliards est habituelle (cela correspond à 32 bits signés). PHP ne supporte pas les entiers non-signés. La taille d'un entier peut être déterminée en utilisant la constante PHP_INT_SIZE, et la valeur maximale, en utilisant la constante PHP_INT_MAX depuis PHP 4.4.0 et PHP 5.0.5.
    A voir si ca n'a pas un lien.

Discussions similaires

  1. [Conception] Connecteurs Java Notes/PHP
    Par lebebert dans le forum Général Java
    Réponses: 10
    Dernier message: 02/02/2006, 08h41
  2. Modifier un champs texte avec une fonction PHP (calcul TVA)
    Par Stella2809 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/11/2005, 00h55
  3. Exécution java et php
    Par KinF dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 04/11/2005, 15h02
  4. Création d'un chat : java ou php ?
    Par bakonu dans le forum Général Conception Web
    Réponses: 5
    Dernier message: 13/01/2005, 10h57

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