mercoledì 1 giugno 2011

pasqua_1.php

<html>
<head>
<title>Calcolo dei giorni della Pasqua Cristiana</title>
</head>
<body>
<h2><center>Digitare gli anni per calcolare la Pasqua</center></h2>
<form action="pasqua_2.php" method="POST">
1<sup>o</sup> anno: <input name="anno1"><br>
2<sup>o</sup> anno: <input name="anno2"><br>
<input type="submit" value="Invia">
<input type="reset" value="Cancella">
</form>
</center>
</body>
</html>



pasqua_2.php


<html>
<head>
<title>Calcolo dei giorni relativi alla Pasqua Cristiana</title>
</head>
<body>
<?php
// Inizializzazione delle variabili
$anno1=$_POST['anno1'];
$anno2=$_POST['anno2'];
/* Controllo che $anno1 e $anno2 >= 1583 e <= 8202
e che siano interi */
if ($anno1-floor($anno1)==0 && $anno2>=1583 && $anno1<=8202 &&
$anno2<=8202) {
// Scambio se $anno1 > $anno2
if ($anno1 > $anno2) {
$tr=$anno1;
$anno1=$anno2;
$anno2=$tr;
}

// Intestazione della tabella
echo "<h2><center>Giorni della Pasqua da $anno1 a $anno2
</center></h2>";
echo "<table border='1' align='center'>
<tr>
<td>Giorno</td>
<td>Mese</td>
<td>Anno</td>
</tr>";
// Calcolo deì giorni della Pasuqa con il ciclo FOR
for ($A=$anno1;$A<=$anno2;$A++) {
// Calcolo di $d
$d=((15 + floor($A/100) - floor($A/400) - (8 * floor($A/100) + 13) / 25) % 30 +
19 * ($A % 19)) % 30;

// Calcolo di $D in funzione di $d
if ($d==29) $D=28;
else if ($d==28 && $A%17>=11) $D=27;
else $D=$d;

// Calcolo di $e
$e = (2 * ($A % 4) + 4 * ($A % 7) + 6 * $D + (6 + floor($A/100) - floor($A/400) - 2) % 7) % 7;
// Calcolo di $pasqua
$pasqua = $e + $D + 1 + 21; $mese="Marzo";
// Se $pasqua > 31 allora $mese="Aprile"
if ($pasqua > 31) {
$mese="Aprile";
$pasqua=$pasqua-31;
}
echo "<tr><td>$pasqua</td><td>$mese</td><td>$A</td></tr>";
}
echo "</table>";
}
else echo "ERRORE!!!";
?>
</body>
</html>

Nessun commento:

Posta un commento