如何在ArrayList中生成Fibonacci系列

时间:2018-02-17 16:03:30

标签: java arraylist

目前我正在处理一项任务,我应该提示用户从控制台输入一个号码(例如1)然后:

  • ArrayList的前两个元素是输入数字(1);
  • ArrayList中的每个下一个元素都等于前两个的总和;
  • 打印ArrayList。

这是我的实习生代码:):

public class ex3 {
public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);
    System.out.println("Enter a number :");
    int number = sc.nextInt();

    List<Integer>numbersList = new ArrayList<>();
    numbersList.add(number);
    numbersList.add(number);

    int k = 0,a = number,b = number;
    for(k=0;k<=10;k++) {
        k = a + b;
        System.out.println(k + " ");
        a=b;
        b=k;
    }
  }
}

我看到很明显我没有将斐波纳契系列放入ArrayList。

2 个答案:

答案 0 :(得分:0)

请在下面找到解决方案:

import java.util.*;

public class ex3{
        
    public static void main(String[] args) {

      Scanner sc = new Scanner(System.in);
      System.out.print("Enter a number :");
      int n = sc.nextInt();

      List<Integer> numbersList = new ArrayList<>();
      int first = 0, second = 1, fib;
      numbersList.add(first);
      numbersList.add(second);
      
      for(int i = 2; i < n; i++) {
          fib = second + first;
          first = second;
          second = fib;
          numbersList.add(fib);
      }
      System.out.println(numbersList);
  }
}

答案 1 :(得分:-1)

creating
creating