1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| $len = 20; function f($a) { if ($a == 1 || $a == 2) { return 1; } return f($a-1) + f($a-2); } var_dump(f($len));
function test($num) { $arr = []; for ($i = 0; $i < $num; $i++) { if ($i == 0 || $i == 1) { $arr[$i] = 1; } else { $arr[$i] = $arr[$i - 1] + $arr[$i - 2]; } } return $arr[$num-1]; } var_dump(test($len));
function fb($max) { $n = 0; $a = 0; $b = 1; while ($n < $max) { if ($n != 1) { $r = $a + $b; $a = $b; $b = $r; } else { $r = 1; } $n++; yield $r; } } foreach (fb($len) as $key => $i) { if ($key != $len - 1) { continue; } var_dump($i); }
|