19
Апр
2015

последовательность Фибоначчи

public class Test {

private static int f(int index) {
    if (index <= 0) {
        return 0;
    } else if (index == 1) {
        return 1;
    } else if (index == 2) {
        return 1;
    } else {
        return f(index - 1) + f(index - 2);
    }
}

public static void main(String[] args) {
    int n = 11;
    for (int i = 1; i <= n; i++) {
        System.out.print(f(i) + " ");
    }
}
}

Ребята, подскажите, пожалуйста, не поминаю как работает часть кода

else { return f(index - 1) + f(index - 2);}

т.е когда n=5, то должно быть (5-1)+(5-2)?? В таком случае ответ не совпадает. Как это работает?

Источник: https://ru.stackoverflow.com/questions/417740/%D0%BF%D0%BE%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D1%8C-%D0%A4%D0%B8%D0%B1%D0%BE%D0%BD%D0%B0%D1%87%D1%87%D0%B8
Share

Тебе может это понравится...