Pagine

mercoledì 1 giugno 2011

NUMERI PERFETTI

perfetti_1.php
<html>
<head>
<title>Numeri perfetti</title>
</head>
<font face="Arial">
<center>
<body bgcolor="e0ffff">
<h2>Digitare due numeri interi positivi<br>
al fine di visualizzare i numeri perfetti compresi tra<br>
i due numeri acquisiti.</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">
</center>
</form>
</font>
</body>
</html>


perfetti_2.php

<html>
<head>
<title>Numeri perfetti</title>
</head>
<body bgcolor="e0ffff">
<font face="Arial">
<?php
//inizzializzazione delle variabili
$prinum=$_POST['prinum'];
$secnum=$_POST['secnum'];
//controllo che i n. 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;
}
echo "<h2><center>Numeri perfetti compresi tra $prinum e $secnum</h2></center>";
/*ciclo di iterazione da $prinum a $secnum
ciclo di iterazione precondizionale */
$i=$prinum;
while($prinum<=$secnum){
/*ciclo di iterazione post condizionale per sommare i divisori di $prinum
escluso $prinum*/
$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++;
}
}else echo"ERRORE!!!! ridigitare";
?>
</font>
</body>
</html>


Nessun commento:

Posta un commento