W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem [email protected].
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, zapraszamy na serwery Discord. Są one moderowane przez społeczność, ale członkowie zespołu technicznego też są tam aktywni.
Liczby Fibonacciego definiuje się w następujący sposób:
Napisz program, który:
Pierwszy i jedyny wiersz standardowego wejścia zawiera jedną liczbę całkowitą , .
Program powinien zapisać na standardowym wyjściu jedną liczbę całkowitą równą .
Dla danych wejściowych:
10
poprawną odpowiedzią jest:
55
Autor zadania: W pewnym sensie Fibonacci.
Poniżej przedstawione są przykładowe rozwiązania tego zadania w czterech językach programowania. Niestety dla dużych wartości (np. = 40) przedstawione programy działają stosunkowo wolno i stąd mogą nie zaliczyć niektórych testów.
function fib(x : integer) : longint; begin if x < 2 then fib := x else fib := fib(x - 1) + fib(x - 2); end; var n : integer; begin readln(n); writeln(fib(n)); end.
#include <stdio.h> long fib(int x) { if (x < 2) return x; return (fib(x - 1) + fib(x - 2)); } int main() { int n; scanf("%d", &n;); printf("%ld\n", fib(n)); return 0; // ta linia jest wazna! // gdy program zwraca kod wyjscia <> 0, // to traktowane jest to jako blad wykonania }
#include <iostream> using namespace std; long fib(int x) { if (x < 2) return x; return (fib(x - 1) + fib(x - 2)); } int main() { int n; cin >> n; cout << fib(n) << "\n"; }
let rec fib n = if n < 2 then n else fib (n - 1) + fib (n - 2);; print_int (fib (read_int ()));; print_newline ();;