-
-
Save renatorib/9871993 to your computer and use it in GitHub Desktop.
| <?php | |
| /** | |
| * Sequência de Fibonacci em PHP | |
| * @author Renato Ribeiro <[email protected]> | |
| * | |
| */ | |
| //função que gera a sequência de fibonacci e retorna em array | |
| function fibonacci($q, $zero = false){ | |
| if($q >= 2){ | |
| $f = ($zero) ? [0,1] : [1,1]; | |
| for($i = 2; $i < $q; $i++){ | |
| $f[$i] = $f[$i-1] + $f[$i-2]; | |
| } | |
| return $f; | |
| } | |
| return ($q == 1) ? [1] : []; | |
| } | |
| //exibindo os primeiros 20 números da sequência de fibonacci, começando por 0 | |
| $fib = fibonacci(20, true); | |
| foreach($fib as $v){ | |
| echo (end($fib) == $v) ? $v : $v.', '; | |
| } | |
| ?> |
@mikely-fernanda isso é um if em linha.
exemplo:$r = (1 == $v) ? 'Yes' : 'No';
*/Olá durante esse ano estive procurando por algo relacionado a esse assunto, depois de analisar algumas funções no PHP
e finalmente entender como funciona o laço for e tbm as functions, montei o seguinte código.
não contem arrays [ ] porém espero que ajude alguem que esteja com a mesma dificuldade que tive :)
*/
//============================
function fibonacci($fi) {
$v1=0;
$v2=1;
$v3=1;
for ($contador=0; $contador <= $fi; $contador++) {
if($contador <=1) {
$v3 = $contador;
}else{
$v3 = $v1 + $v2;
$v1 = $v2;
$v2 = $v3;
} $res = $v3+$v1;
echo "$v3 + $v1 = $res <br><br>";
}
} fibonacci (13);
//================================
// aqui dentro dos brackets ( ) vai o valor de sequencias que voce quer que apareça
//no caso solicitei que mostre apenas 13 sequencias após a linha do zero
//utilizei if else para iniciar a sequencia a partir do zero mostrando resultado
olá, gostaria de saber o que significa o ponto de interrogação na linha 11: $f = ($zero) ? [0,1] : [1,1];