mercoledì 8 giugno 2011

Numeri perfetti

Pagina HTML
<html>
 <head>
  <title>Numeri perfetti</title>
 </head>
 <body>
  <h2><center>Digitare due numeri interi positivi<br>
  al fine di visualizzare i n. perfetti compresi tra<br>
  i due numeri acquisiti</center></h2>
  <form action="perfetti_2.php" method="POST">
   1<sup>o</sup> Numero: <input name="prinum"><br>
   2<sup>o</sup> Numero: <input name="secnum"><p>
   <input type="submit" value="Invia">
   <input type="reset" value="Cancella">
  </form>
 </body>
</html>

Pagina PHP
<?php
 //Inizializzazione delle variabili
 $prinum=$_POST['prinum'];
 $secnum=$_POST['secnum'];

 //Controllo che i numeri acuisiti siano interi positivi
 if($prinum>0 and $secnum>0 and $prinum-floor($prinum)==0 and $secnum-floor($secnum)==0) {
 
  //Scambio dei numeri se $prinum>$secnum
  if($prinum>$secnum) {
  $transito=$prinum;
  $prinum=$secnum;
  $secnum=$transito;
  }
 /*Ciclo di iterazione da $prinum a $secnum
 ciclo di iterazione pre condizionale*/
 while($prinum<=$secnum) {
   /*Ciclo di iterazione post condizionale
   per sommare i divisori di $prinum
   escluso $secnum */
   $i=1; $somma=0;
   do {
    if($prinum%$i==0) $somma= $somma+$i;
    $i++;
   } while($i<=$prinum/2);
   if($prinum==$somma) echo "$prinum &egrave; perfetto.<br>";
   $prinum++;
  }
 }
?>

Nessun commento:

Posta un commento