par
Ryle » 16 oct. 2010, 10:34
Voici ce que fait ton code
<?php
function fib($nombre){ // crées une fonction fib avec le parametre nombre
if ($nombre<0) { // si nombre est inferieure a zero
return (0); // la fonction retourne la valeur 0
}
elseif ($nombre<2) { // sinon si nombre est inférieur a 2
return ($nombre); // retourne la valeur de nombre
}
return fib ($nombre-1)+fib($nombre-2); // retourne la somme (a+b) du résultat de la fonction fib() appliquée à la valeur "nombre-1" (donc 5 si nombre=6) et du résultat de la fonction fib() appliquée à la valeur "nombre-2" (donc 4 si nombre=6)
}
// ici nous ne sommes plus dans la fonction
for ($i=0;$i<20;$i++){ // Pour i allant de 0 à 19 (strictement inférieur à 20)
$nouveau_nombre=fib($i); // calcul le résultat de la fonction fib() appliquée à la valeur de i (et stock le résultat dans $nouveau_nombre)
echo $nouveau_nombre; // affiche ce résultat
echo '<br>';
}
?>
En résumé, tu appliques la fonction fib() au nombre 0, tu affiches le résultat, puis tu recommences avec la valeur 1, la valeur 2, etc. jusqu'à 19 pour obtenir les 20 premiers résultats de la suite de Mr Fibo

Voici ce que fait ton code :)
[php]<?php
function fib($nombre){ // crées une fonction fib avec le parametre nombre
if ($nombre<0) { // si nombre est inferieure a zero
return (0); // la fonction retourne la valeur 0
}
elseif ($nombre<2) { // sinon si nombre est inférieur a 2
return ($nombre); // retourne la valeur de nombre
}
return fib ($nombre-1)+fib($nombre-2); // retourne la somme (a+b) du résultat de la fonction fib() appliquée à la valeur "nombre-1" (donc 5 si nombre=6) et du résultat de la fonction fib() appliquée à la valeur "nombre-2" (donc 4 si nombre=6)
}
// ici nous ne sommes plus dans la fonction
for ($i=0;$i<20;$i++){ // Pour i allant de 0 à 19 (strictement inférieur à 20)
$nouveau_nombre=fib($i); // calcul le résultat de la fonction fib() appliquée à la valeur de i (et stock le résultat dans $nouveau_nombre)
echo $nouveau_nombre; // affiche ce résultat
echo '<br>';
}
?>[/php]
En résumé, tu appliques la fonction fib() au nombre 0, tu affiches le résultat, puis tu recommences avec la valeur 1, la valeur 2, etc. jusqu'à 19 pour obtenir les 20 premiers résultats de la suite de Mr Fibo :)