java—如何从数组中获取唯一输入的值?

u2nhd7ah  于 2021-07-04  发布在  Java
关注(0)|答案(1)|浏览(234)

我试图制作一个程序来打印一个乘法表,用户在其中输入他想要的表的数目(例如3),也输入他想要的表的值(2,6,5(随机/无序)),也输入乘法器的范围。我的代码正在打印数组中的所有元素。请帮帮我。谢谢你。

import java.util.Scanner;

类添加{public static void main(string[]args){

int j=0,k=0;
    Scanner obj=new Scanner(System.in);
    int arr[]=new int[32];
    System.out.println("how many multiplication table do you want to print ? ");
    int n=obj.nextInt();
    for(int i=1;i<=n;i++)
    {
        System.out.println("Enter number whos table you want ");
        for(j=1;j<=n;j++)
        {
            arr[j]=obj.nextInt(); break;
        }
    }
    System.out.println("Enter range of multiplier");
    int range=obj.nextInt();

    for(int l=0;l<=arr[j];l++)
    {
        for(k=1;k<=range;k++)
        {
            System.out.println(" "+l+" * "+k+" = "+l*k);

        }
    }
}

}
我想要的输出有点像这样(你想打印多少个乘法表=3和输入数字2、5、6和范围=4)

2x1=2 
2x2=4  
2x3=6   
2x4=8

5x1=5  
5x2=10  
5x3=15  
5x4=20

6x1=6  
6x2=12  
6x3=18  
6x4=24
w41d8nur

w41d8nur1#

我做了一些调整来实现我认为你想要实现的目标。您可以使用如下所示的arraylist:

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

    int j=0,k=0;
    Scanner obj=new Scanner(System.in);

    ArrayList<Integer> typeMultiplicationTable = new ArrayList<Integer>();

    //used Arraylist instead of an array
    //int arr[]=new int[32]; 
    System.out.println("how many table? ");
    int n=obj.nextInt();

    for(int i=1;i<=n;i++)
    {
        System.out.println("Enter number whos table you want ");
        for(j=0;j<=n;j++)
        {
            typeMultiplicationTable.add(obj.nextInt());
            break;
            //arr[j]=obj.nextInt(); break;
        }
    }
    System.out.println("Enter range");
    int range=obj.nextInt();

    for(int l=0;l<=typeMultiplicationTable.size()-1;l++)
    {
        for(k=0;k<=range;k++)
        {
            System.out.println(" "+typeMultiplicationTable.get(l)+" * "+k+" = "+typeMultiplicationTable.get(l)*k);
        }
    }
}}

如果你最终使用了一个数组,你可以如下实现-我最终删除了一个for循环。

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

    Scanner obj=new Scanner(System.in);

    System.out.println("how many table? ");
    int n=obj.nextInt();

    int arr[]=new int[n]; 

        for(int j=0;j<=arr.length-1;j++)
        {
            System.out.println("Enter number whos table you want ");
            arr[j]=obj.nextInt();
        }

    System.out.println("Enter range");
    int range=obj.nextInt();

    for(int l=0;l<=arr.length-1;l++)
    {
        for(int k=0;k<=range;k++)
        {
            System.out.println(" "+arr[l]+" * "+k+" = "+arr[l]*k);
        }
    }
}}

相关问题