mercoledì 1 giugno 2011

NUMERI PERFETTI

 Perfetti_1.php
<html>
    <head>
        <title>Numeri perfetti</title>
    </head>
    <body bgcolor=00ffff>
        <h2><center>Digitare due numeri interi positivi<br>
        al fine di visualizzare i numeri 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>
Perfetti_2.php

    <head>
            <title>Numeri perfetti</title>


    </head>
    <body>
<?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;
    }
    /*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";
?>
      
    </body>
</html>

Nessun commento:

Posta un commento