Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 带数组的斐波那契序列_Java_Arrays_Input_Fibonacci - Fatal编程技术网

Java 带数组的斐波那契序列

Java 带数组的斐波那契序列,java,arrays,input,fibonacci,Java,Arrays,Input,Fibonacci,我的任务是使用斐波那契序列编写一个程序,并将它们放入数组中。它的工作原理是获取用户输入(用户希望打印出的序列中有多少个数字),然后将其实现到一个数组中,并使用用户输入的“数字”的数量打印出序列。 由于我错过了两周的课程,我在网上查看了如何编写这个程序,并找到了一个视频,其中包含以下代码。因此,我不认为下面的代码值得称赞,我只是把它作为一个例子 无论如何,代码如下: public class Fibonacci { public static void main(String[] args

我的任务是使用斐波那契序列编写一个程序,并将它们放入数组中。它的工作原理是获取用户输入(用户希望打印出的序列中有多少个数字),然后将其实现到一个数组中,并使用用户输入的“数字”的数量打印出序列。 由于我错过了两周的课程,我在网上查看了如何编写这个程序,并找到了一个视频,其中包含以下代码。因此,我不认为下面的代码值得称赞,我只是把它作为一个例子

无论如何,代码如下:

public class Fibonacci
{
    public static void main(String[] args)
    {
        int numToPrint;
        //how many numbers to print out

        Scanner scan = new Scanner(System.in);
        System.out.println("Hvað viltu prenta út margar tölur úr Fibonacci röðinni?");
        numToPrint = scan.nextInt();
        scan.close();

        //prints out the first 2 numbers
        int nuverandiT = 1;
        int lokaT = 0;
        System.out.println(lokaT);
        System.out.println(nuverandiT);

        //prints out the rest of the sequence
        int lokaLokaT;
        for(int i = 2; i < numToPrint; i++)
        {
            lokaLokaT = lokaT;
            lokaT = nuverandiT;
            nuverandiT = lokaLokaT + lokaT;
            System.out.println(nuverandiT);
        }
    }
}
公共类Fibonacci
{
公共静态void main(字符串[]args)
{
int numToPrint;
//要打印多少个数字
扫描仪扫描=新扫描仪(System.in);
系统输出println(“Hvaðviltu prentaút margar tölurúr Fibonacci röinni?”);
numToPrint=scan.nextInt();
scan.close();
//打印出前两个数字
int nuverandiT=1;
int-lokaT=0;
系统输出打印LN(lokaT);
System.out.println(nuverandiT);
//打印出序列的其余部分
内洛卡洛卡特;
对于(int i=2;i

现在,它用用户的输入打印出斐波那契序列,但我不太确定如何将其打印到数组中。你们中有人知道怎么做吗?

我猜当你说“打印到数组中”时,你的意思是你只想在数组中存储值。那么,

在for循环之前:

int[] array = new int[numToPrint];
array[i-2] = nuverandiT;
在for循环中:

int[] array = new int[numToPrint];
array[i-2] = nuverandiT;

如果您想在数字存储在数组中之后打印它们,那么您可能希望循环遍历它并以相同的方式打印,通过索引访问元素。关于更多信息,java文档非常好。我建议您阅读和。

您必须创建一个数组,例如:

int[] simpleArray;
simpleArray = new int[numToPrint];

System.out.println(lokaT);
System.out.println(nuverandiT);
付诸表决:

在你的循环中,你放了这个:

System.out.println(nuverandiT);
这:
simpleArray[i]=nuverandiT

您可以使用
array.toString(array)
打印数组。不需要额外的循环。这也是一个很好的选择,取决于您对格式的挑剔程度。谢谢您的反馈:)打印到数组中是什么意思?是否希望将值存储在数组中,而不是在控制台中打印它们?或者您希望将值打印在控制台中,但格式为“[2,3,5,8]”?在这种情况下,您不希望将数组初始化为
new int[numtoprit+2]
?假设numtoprit=10,如果您初始化new int[numtoprit],您将有10个数组位置(0到9)。for循环直到i