Listing du fichier pilev1.php
00001 <?php
00002
00003 # ----------------------------------
00004
00005 function creerPile() {
00006
00007 return( array() ) ;
00008
00009 } # fin de fonction creerPile
00010
00011 # ----------------------------------
00012
00013 function pileVide($p) {
00014
00015 return( count($p)==0 ) ;
00016
00017 } # fin de fonction pileVide
00018
00019 # ----------------------------------
00020
00021 function empiler($valeur,$pile) {
00022
00023 $pile[ count($pile) ] = $valeur ;
00024
00025 return( $pile ) ;
00026
00027 } # fin de fonction empiler
00028
00029 # ----------------------------------
00030
00031 function depiler($pile) {
00032
00033 $idd = count($pile) - 1 ; # idd : indice du dernier
00034
00035 if ($idd>=0) {
00036 $dep = $pile[ $idd ] ;
00037 unset( $pile[ $idd ] ) ;
00038 } else {
00039 $dep = "" ;
00040 } # finsi
00041
00042 return( array($dep,$pile) ) ;
00043
00044 } # fin de fonction depiler
00045
00046 # ----------------------------------
00047
00048 function montrerPile($pile) {
00049
00050 $nbe = count($pile) ;
00051 if (pileVide($pile)) {
00052 echo "la pile est vide.\n" ;
00053 } else {
00054 echo "Contenu de la pile :\n" ;
00055 for ($ide=$nbe-1;$ide>=0;$ide--) {
00056 echo " valeur numéro ".sprintf("%2d",$ide)." : ".sprintf("%4d",$pile[$ide]) ;
00057 if ($ide==$nbe-1) { echo " (haut de la pile)" ; } ;
00058 if ($ide==0) { echo " (bas de la pile)" ; } ;
00059 echo "\n" ;
00060 } ; # fin pour ide
00061 } ; # finsi
00062
00063 } # fin de fonction montrerPile
00064
00065 # ----------------------------------
00066
00067 $p = creerPile() ; # un simple tableau
00068 montrerPile($p) ; # doit afficher "la pile est vide"
00069
00070 $p = empiler(5,$p) ; # la pile ne contient que 5
00071 $p = empiler(2,$p) ; # la pile contient 5 et, au-dessus, 2
00072 montrerPile($p) ; # voir plus bas
00073
00074 list($x,$p) = depiler($p) ; # renvoie 2
00075 echo "on a enlevé $x (du haut) de la pile\n" ;
00076 list($x,$p) = depiler($p) ; # renvoie 5
00077 list($x,$p) = depiler($p) ; # afficher "impossible, la pile est vide" ou renvoyer "erreur" ?
00078
00079 /***************************************
00080
00081 Affichage :
00082
00083 la pile est vide.
00084 Contenu de la pile :
00085 valeur numéro 1 : 2 (haut de la pile)
00086 valeur numéro 0 : 5 (bas de la pile)
00087 on a enlevé 2 (du haut) de la pile
00088
00089 ***************************************/
00090
00091 ?>
La coloration syntaxique est réalisée par un enrobage de la function php nommée highlight_file
mais si vous préférez, vous pouvez utiliser celle de SyntaxHighlighter ou même celle de geshi.
Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.
Retour à la page principale de (gH)