Fibonacci序列向后

Zwi*_*bel 4 java math fibonacci

这是代码:

class Fibonacci {
    static final int MIN_INDEX = 1;
    public static void main (String[] args){
        int high = 1;
        int low = 1;
        String jel;
        System.out.println("9: " + high);

    for (int i = 8; i >= MIN_INDEX; i--){
        if (high % 2 == 0)
            jel = " *";
        else 
            jel = " ";
        System.out.println(i + ": " + high + jel);
        high = low + high;
        low = high - low;


    }
}
}
Run Code Online (Sandbox Code Playgroud)

我想制作这个程序,向后写输出数字.所以我不仅希望从最后一个到第一个的'i'步骤,而且也想要数字.

在这个例子中,输出是:1,1,2,3,5,8,例如......但是我想在序列中显示它:例如......,8,5,3,2,1 ,1.

我试图改变高低,但我不能让这个程序强制"向后"运行.

Dr.*_*ius 6

这里没有Java,但Fibonacci数字有明确的封闭形式:

f[n_] := N@(GoldenRatio^n - (1 - GoldenRatio)^n)/Sqrt[5];  
Run Code Online (Sandbox Code Playgroud)

哪里

GoldenRatio =(1 + Sqrt [5])/ 2

所以你可以这样做:

For[i = 10, i > 0, i--,
     Print[f[i]];
  ];  
Run Code Online (Sandbox Code Playgroud)

输出:

55.
34.
21.
13.
8.
5.
3.
2.
1.
1.
Run Code Online (Sandbox Code Playgroud)

编辑

另外,黄金比例是你在自然,科学和艺术中可以找到的那些无与伦比的数字之一.

你可能会发现从海贝壳到帕台农神庙的黄金比例.