Valid XHTML     Valid CSS2    

Listing du fichier valmax.php

 

00001     <?php
00002     
00003     ##################################################################
00004     
00005     function 
valMax($leTableau) {
00006     
00007     ##################################################################
00008     
00009       # nbelt : nombre d'éléments dans le tableau
00010       # maxjl : maximum courant (Jusque Là)
00011       # idv   : indice de valeur dans le tableau
00012       # valc  : valeur courante dans le tableau à l'indice idv
00013     
00014       $nbelt 
count($leTableau) ;
00015       $maxjl 
$leTableau[0] ;
00016     
00017       for ($idv
=0;$idv<$nbelt;$idv++) {
00018         $valc 
$leTableau[$idv] ;
00019         if ($valc
>$maxjl) { $maxjl $leTableau[$idv] ; } ;
00020       } ; # fin pour idv
00021     
00022       return( 
$maxjl ) ;
00023     
00024     } # fin de fonction valMax
00025     
00026     ##################################################################
00027     
00028     $tableau 
preg_split("/\s+/","1 8 2 8 3 6 8 2") ;
00029     
00030     # si vous décommentez la ligne suivante, on trie des chaines de caractères :
00031     # $tableau = preg_split("/\s+/","le chat, le chien et le rat sont des animaux") ;
00032     
00033     echo 
"Voici le tableau utilisé :\n" ;
00034     
00035     print_r
($tableau) ;
00036     
00037     # version 1 : utilisation de valMax et utilisation d'une boucle
00038     #             pour calculer le nombre d'occurences du max
00039     
00040     $vmax 
valMax($tableau) ;
00041     echo "Version 1 : le plus grand élément est 
$vmax " ;
00042     
00043     $nbmax 
;
00044     $nbelt 
count($tableau) ;
00045     for ($idv
=0;$idv<$nbelt;$idv++) {
00046         $valc 
$tableau[$idv] ;
00047         if ($valc
==$vmax) { $nbmax++ ; } ;
00048     } ; # fin pour idv
00049     
00050     echo 
" et il apparait $nbmax fois.\n\n" ;
00051     
00052     # version 2 : tout en une seule boucle
00053     
00054       # nbelt : nombre d'éléments dans le tableau
00055       # maxjl : maximum courant (Jusque Là)
00056       # idv   : indice de valeur dans le tableau
00057       # valc  : valeur courante dans le tableau à l'indice idv
00058     
00059       #       prem  : première fois où on la voit
00060       #       dern  : dernière fois où on la voit
00061       #       nboc  : nombre d'occurences
00062     
00063       $nbelt 
count($tableau) ;
00064       $maxjl 
$tableau[0] ;
00065       $prem  
;
00066       $dern  
;
00067       $nboc  
;
00068       for ($idv
=0;$idv<$nbelt;$idv++) {
00069         $valc 
$tableau[$idv] ;
00070         if ($valc
==$maxjl) {
00071             $nboc
++  ;
00072             $dern  
$idv+;
00073         } else {
00074             if ($valc
>$maxjl) {
00075                 $maxjl 
$tableau[$idv] ;
00076                 $nboc  
;
00077                 $prem  
$idv+;
00078                 $dern  
$idv+;
00079             } ; # fin si
00080         } ; 
# fin de si
00081       } ; 
# fin pour idv
00082     
00083     echo 
"Version 2 : le plus grand élément est $vmax " ;
00084     echo " et il apparait 
$nboc fois,\n" ;
00085     echo "la première fois en position 
$prem et " ;
00086     echo "la dernière fois en position 
$dern.\n\n" ;
00087     
00088     /**************************************************
00089     
00090      Affichage :
00091     
00092     Voici le tableau utilisé
00093     
00094     Array
00095     (
00096         [0] => 1
00097         [1] => 8
00098         [2] => 2
00099         [3] => 8
00100         [4] => 3
00101         [5] => 6
00102         [6] => 8
00103         [7] => 2
00104     )
00105     
00106     Version 1 : le plus grand élément est 8  et il apparait 3 fois.
00107     
00108     Version 2 : le plus grand élément est 8  et il apparait 3 fois,
00109     la première fois en position 2 et la dernière fois en position 7.
00110     
00111     avec les chaines de caractères :
00112     --------------------------------
00113     
00114     Voici le tableau utilisé :
00115     Array
00116     (
00117         [0] => le
00118         [1] => chat,
00119         [2] => le
00120         [3] => chien
00121         [4] => et
00122         [5] => le
00123         [6] => rat
00124         [7] => sont
00125         [8] => des
00126     
00127     
00128     Version 1 : le plus grand élément est sont  et il apparait 1 fois.
00129     
00130     Version 2 : le plus grand élément est sont  et il apparait 1 fois,
00131     la première fois en position 8 et la dernière fois en position 8.
00132     
00133     
00134     **************************************************/
00135     
00136     ?>

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 gH    Retour à la page principale de   (gH)