Valid XHTML     Valid CSS2    

Listing du fichier pilev1.php avec syntaxhighlighter


        <?php
        
        # ----------------------------------
        
        function creerPile() {
        
          return( array() ) ;
        
        } # fin de fonction creerPile
        
        # ----------------------------------
        
        function pileVide($p) {
        
          return( count($p)==0 ) ;
        
        } # fin de fonction pileVide
        
        # ----------------------------------
        
        function empiler($valeur,$pile) {
        
          $pile[ count($pile) ] = $valeur ;
        
          return( $pile ) ;
        
        } # fin de fonction empiler
        
        # ----------------------------------
        
        function depiler($pile) {
        
          $idd = count($pile) - 1 ; # idd : indice du dernier
        
          if ($idd>=0) {
             $dep = $pile[ $idd ] ;
             unset( $pile[ $idd ]  ) ;
          } else {
             $dep = "" ;
          } # finsi
        
          return( array($dep,$pile) ) ;
        
        } # fin de fonction depiler
        
        # ----------------------------------
        
        function montrerPile($pile) {
        
          $nbe = count($pile) ;
          if (pileVide($pile)) {
             echo "la pile est vide.\n" ;
          } else {
            echo "Contenu de la pile :\n" ;
            for ($ide=$nbe-1;$ide>=0;$ide--) {
              echo "  valeur numéro ".sprintf("%2d",$ide)." : ".sprintf("%4d",$pile[$ide]) ;
              if ($ide==$nbe-1) { echo " (haut de la pile)" ; } ;
              if ($ide==0)      { echo " (bas  de la pile)" ; } ;
              echo "\n" ;
            } ; # fin pour ide
          } ; # finsi
        
        } # fin de fonction montrerPile
        
        # ----------------------------------
        
        $p = creerPile()   ; # un simple tableau
        montrerPile($p)    ; # doit afficher "la pile est vide"
        
        $p = empiler(5,$p) ; # la pile ne contient que 5
        $p = empiler(2,$p) ; # la pile contient 5 et, au-dessus, 2
        montrerPile($p)    ; # voir plus bas
        
        list($x,$p) = depiler($p) ; # renvoie 2
        echo "on a enlevé $x (du haut) de la pile\n" ;
        list($x,$p) = depiler($p) ; # renvoie 5
        list($x,$p) = depiler($p) ; # afficher "impossible, la pile est vide" ou renvoyer "erreur"  ?
        
        /***************************************
        
        Affichage :
        
        la pile est vide.
        Contenu de la pile :
          valeur numéro  1 :    2 (haut de la pile)
          valeur numéro  0 :    5 (bas  de la pile)
        on a enlevé 2 (du haut) de la pile
        
        ***************************************/
        
        ?>
        

La coloration syntaxique est réalisée par : SyntaxHighlighter.

Si vous préférez, vous pouvez utiliser celle de geshi ou même celle construite autour de la fonction highlight_file.

 

 

retour gH    Retour à la page principale de   (gH)