Newsgroup: it.comp.www.php
Titolo: urgente problema con print_r

Ciao a tutti,
è un problema stupido, ma sono ai primissimi approcci col php e non so
risolverlo, vi prego aiutatemi.
Il problema nasce con uno dei comandi finali print_r che mi stampa un array
con 8 elementi, mentre come si può vedere l'array $voto ne ha sette.
Come posso correggere quest'errore?
Grazie a tutti quelli che mi daranno una mano.
ciao
PS: vorrei anche inserire gli studenti con voto negativo, ho provato
sostituendo nella formula < di 18 ma mi dà valori sbagliati.
 <html>
  <head>
    <title> Programma esame </title>
  </head>
  <body>
    <?php
 echo "<h1><CENTER> Presentazione e analisi delle valutazioni di un esame
</CENTER></h1><BR>";
 $stud_1 = "Giada";
 $voto_1 = "22";
 $stud_2 = "Paolo";
 $voto_2 = "27";
 $stud_3 = "Carla";
 $voto_3 = "16";
 $stud_4 = "Mirko";
 $voto_4 = "25";
 $stud_5 = "Sonia";
 $voto_5 = "28";
 $stud_6 = "Piero";
 $voto_6 = "12";
 $stud_7 = "Nadia";
 $voto_7 = "23";
 $stud_8 = "Diego";
 $voto_8 = "20";
 $classe = array ("$stud_1", "$stud_2", "$stud_3", "$stud_4", "$stud_5",
"$stud_6", "$stud_7", "$stud_8");
 $voto = array (1=>"$voto_1", 2=>"$voto_2", 3=>"$voto_3", 4=>"$voto_4",
5=>"$voto_5", 6=>"$voto_6", 7=>"$voto_7", 8=>"$voto_8");
 $stud_1 = $voto[1];
 $stud_2 = $voto[2];
 $stud_3 = $voto[3];
 $stud_4 = $voto[4];
 $stud_5 = $voto[5];
 $stud_6 = $voto[6];
 $stud_7 = $voto[7];
 $stud_8 = $voto[8];
 echo "<h3>Valutazioni</h3>";
 echo "Giada voto\n$stud_1<BR>";
 echo "Paolo voto\n$stud_2<BR>";
 echo "Carla voto\n$stud_3<BR>";
 echo "Mirko voto\n$stud_4<BR>";
 echo "Sonia voto\n$stud_5<BR>";
 echo "Piero voto\n$stud_6<BR>";
 echo "Nadia voto\n$stud_7<BR>";
 echo "Diego voto\n$stud_8<BR>";
 echo "<BR>";
 echo "<BR>";
 echo "<h3>Voto migliore e voto peggiore</h3>";
 $min = $voto[1];
 $max = $voto[1];
 foreach ($voto as $val)
 {
  if( $min > $val )
   $min = $val;
  if( $max < $val )
   $max = $val;
 }
 echo "Il voto peggiore è stato: $min<BR>";
 echo "Il voto migliore è stato: $max<BR>";
 echo "<BR>";
 echo "<BR>";   # per una migliore impaginazione(layout)
 echo "<h3>Studente migliore e studente peggiore</h3>";
 $sum = 0;
 foreach ($voto as $val)
   {
   $sum+= $val;
   }
 $media=$sum/ count($voto);
 $cont=0;
 $voto[$cont] = $classe[$cont];
 foreach ($voto as $num)
 {
  if ($num===$min)
   echo "Lo studente peggiore è: $classe[$cont]<BR>";
   $cont += 1;
 }
 $cont=0;
 $voto[$cont] = $classe[$cont];
 foreach ($voto as $num)
 {
  if ($num===$max)
   echo "Lo studente migliore è: $classe[$cont]<BR>";
   $cont += 1;
 }
  echo "<BR>";
 echo "<BR>";
 echo "<h3>Media</h3>";
 echo "La media è : $media <Br>";
 echo "<BR>";
     echo "<BR>";
 echo "<h3>Studenti con valutazione positiva</h3>";
 $cont=0;
 $voto[$cont] = $classe[$cont];
 foreach ($voto as $num)
   {
    if ($num >= 18)
  echo " $classe[$cont]"," voto ","$num <BR>";
         $cont = $cont + 1;
   }
 echo "<h3> Ordine degli studenti</h3>";
 sort ($voto);
 print_r ($voto);
    ?>
  </body>
</html>

  $voto[$cont] = $classe[$cont];
Idem come sopra.
-- 
I am what I am, I do what I can
Sei un newbie? Leggi questo 
http://url.repository.biz/go/3C
Vuoi supportarmi? 
http://url.repository.biz/go/3E
Do. Or do not. There is not try.

    }
Vedi sopra.
Ciao.

 piu' veloce.
Ancora piu' veloce ed "economico":
$media = array_sum ($voto) / count ($voto);
 
-- 
I am what I am, I do what I can


 Il codice di cui sopra imposta $voto[8] => Giada;
ecco questo credo sia il problema, perchè l'elemento estraneo finale che mi
stampa è [8]=> Giada
ma come lo risolvo?
Vi ringrazio per l'aiuto!