Java 如何在数组中传递tribonacci系列值,然后打印我想要的任何索引值?

Java 如何在数组中传递tribonacci系列值,然后打印我想要的任何索引值?,java,arrays,windows,algorithm,indexing,Java,Arrays,Windows,Algorithm,Indexing,//节目:Tribonaci系列 import java.util.*; import java.io.*; class Tribonacci { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.print("Enter number till u want Tribonacci series: ");

//节目:Tribonaci系列

import java.util.*;
import java.io.*;

class Tribonacci
{
    public static void main(String args[])
    {
        Scanner sc = new Scanner(System.in);
        System.out.print("Enter number till u want Tribonacci series: ");
        int n=sc.nextInt();

        int a = 0,b = 0,c = 1;
        int d = a+b+c;

        System.out.println("\nTribonacci Series: ");
        System.out.print(a+"\t"+b+"\t"+c);

        for(int i=4;i<=n;i++)
        {
            System.out.print("\t"+d);
            a=b;
            b=c;
            c=d;
            d=a+b+c;
        }

        System.out.println();
    }
}
import java.util.*;
导入java.io.*;
Tribonaci类
{
公共静态void main(字符串参数[])
{
扫描仪sc=新的扫描仪(System.in);
System.out.print(“输入数字直到您想要Tribonaci系列:”);
int n=sc.nextInt();
int a=0,b=0,c=1;
int d=a+b+c;
System.out.println(“\nTribonacci系列:”);
系统输出打印(a+“\t”+b+“\t”+c);

对于(int i=4;i您可以声明一个列表,并将生成的Tribonaci编号保存到该列表中。然后通过将索引1传递到n,可以访问任何Tribonaci编号

尝试使用此代码

public static void main(String args[]) {
    Scanner sc = null;
    try {
        sc = new Scanner(System.in);
        System.out.print("Enter number till u want Tribonacci series: ");
        int n = sc.nextInt();

        int a = 0, b = 0, c = 1;
        int d = a + b + c;
        List<Integer> triboList = new ArrayList<Integer>();
        if(n <= 0) {
            System.out.println("Invalid number. Number must be greater than zero");
            return;
        }
        System.out.println("\nTribonacci Series: ");
        if (n == 1) {
            System.out.print(a);
            triboList.add(a);
        } else if (n == 2) {
            System.out.print(a + "\t" + b);
            triboList.add(a);
            triboList.add(b);
        } else if (n >= 3) {
            triboList.add(a);
            triboList.add(b);
            triboList.add(c);
            System.out.print(a + "\t" + b + "\t" + c);
        }

        for (int i = 4; i <= n; i++) {
            System.out.print("\t" + d);
            triboList.add(d);
            a = b;
            b = c;
            c = d;
            d = a + b + c;
        }
        System.out.println();

        System.out.println("Enter a number between 1 and " + n + " to print tribonacci number for that index.");
        int index = sc.nextInt();
        if (index < 1 || index > n) {
            System.out.println("Invalid index. Index can only be 1 to " + n);
        } else {
            System.out.println(triboList.get(index - 1));
        }
    } finally {
        if (sc != null) {
            sc.close();
        }
    }
}
publicstaticvoidmain(字符串参数[]){
扫描仪sc=空;
试一试{
sc=新扫描仪(系统英寸);
System.out.print(“输入数字直到您想要Tribonaci系列:”);
int n=sc.nextInt();
int a=0,b=0,c=1;
int d=a+b+c;
List=newarraylist();
如果(n=3){
增加(a);
增加(b);
添加(c);
系统输出打印(a+“\t”+b+“\t”+c);
}
对于(int i=4;i n){
System.out.println(“无效索引。索引只能是1到“+n”);
}否则{
System.out.println(triboList.get(index-1));
}
}最后{
如果(sc!=null){
sc.close();
}
}
}

很抱歉,php和c编程语言在这里有什么关系?因为上面的“代码”在Java中不要在你的问题中使用不相关的标记只是为了引起注意,请阅读,尤其是和。还有。兄弟,这是一个错误,非常欢迎并很高兴能提供帮助。另外,我已经用代码更新了答案,以便你的程序能够正确地处理所有类型的输入,负数以及1、2、3、4等等,即使在您为n的值输入了1或2,它至少打印了3个Tribonaci编号。