import java.util.Scanner;

/**
 * @author HelloWorld
 * @create 2021-04-07-11:43
 * @email 154803771@qq.com
 */
public class Test15 {

    public static void main(String[] args) {
        System.out.println("Input n: ");
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        //递归打印斐波拉契数列
        System.out.println("递归:" +fei(n));

        //循环
        System.out.println("循环:" + feiFor(n));
    }

    // 递归
    public static int fei(int n) {
        if (n == 1 || n == 2) {
            return 1;
        }
        return fei(n - 1) + fei(n - 2);
    }
    // 循环
    public static int feiFor(int n) {
        int a = 1;
        int b = 0;
        int m = n;
        for (int i = 0; i < (n + 1) >> 1 ; i++) {
            a += b;
            b += a;
        }
        return m % 2 == 0 ? b : a;
    }
}