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 = 0 ;
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 = 1 ;
00066 $dern = 1 ;
00067 $nboc = 0 ;
00068 for ($idv=0;$idv<$nbelt;$idv++) {
00069 $valc = $tableau[$idv] ;
00070 if ($valc==$maxjl) {
00071 $nboc++ ;
00072 $dern = $idv+1 ;
00073 } else {
00074 if ($valc>$maxjl) {
00075 $maxjl = $tableau[$idv] ;
00076 $nboc = 1 ;
00077 $prem = $idv+1 ;
00078 $dern = $idv+1 ;
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 à la page principale de (gH)