...LELENA...

Mi chiamo Elena,ho 21 anni e vivo a Polaggia,una frazione del comune di Berbenno...Ho appena finito gli esami di maturità...

giovedì, marzo 22, 2007

programma

Ci sono stati consegnati due programmi per anagrammare parole in PHP...Io ve ne propongo uno...
$p='elena';
$n=strlen($p)-1;
for ($i=0; $i<=$n; $i++) $v[$i]=$i;
$f=1; for($i=1; $i<=$n+1; $i++) $f=$f*$i; echo"\n$f";
for ($h=0; $h<=$f; $h++) {
echo "
"; printf("%03d", $h); echo"\n>\n";
for($i=0; $i<=$n; $i++) { $c=$v[$i]; echo"$p[$c]"; }
for($i=$n; $i>=1; $i--) {
for($j=$n; $j>=$i; $j--) {
if($v [$j] > $v [$i-1] ) {
$c=$v[$i-1]; $v[$i-1] = $v[$j]; $v[$j] = $c;
for($k=0; $k<=floor ( ($n-$i-1) /2); $k++) {
$c=$v[$n-$k]; $v[$n-$k] = $v[$i+$k]; $v[$i+$k] = $c;
}
continue 3;
}
}
}
}
?>

strlen=lunghezza della stringa
printf=dare una forma particolare
%03d=mettere a destra un numero di zero per formare un numero di 3 cifre
floor=tronca gli eventuali decimali
continue 3=salta di 3 cicli