我想使用用户的输入创建一个2D数组,并在第二行创建随机数。 E.g:
输出应为:
如果用户输入“7”,则:
1 2 3 4 5 6 7(用户输入)
0 2 4 8 9 8 5(随机数)
但我只得到一个随机数。
我的代码正在运行,但我看不到正确创建数组。 我的代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter number of exits: ");
int n = input.nextInt();
int [][] A = new int[2][n];
for(int i=0; i<A.length; i++){
for (int j = 0; j<n; j++) {
A[i][j] = (int) (Math.random()*10);
}
}
System.out.println(A[1][n-1]);
System.out.print("Distance between exit i and exit j is: " + distance());
}
public static int distance(){
Scanner input = new Scanner(System.in);
System.out.print("Please enter exit i: ");
int i = input.nextInt();
System.out.print("Please enter exit j: ");
int j = input.nextInt();
return i + j;
}
}
我该如何解决?
答案 0 :(得分:3)
这会有帮助吗?
int n = input.nextInt();
Random rand = new Random();
int [][] A = new int[2][n];
for (int i = 0; i<n; i++) {
A[0][i] = i+1;
A[1][i] = rand.nextInt(10);
}
答案 1 :(得分:0)
我不太确定你的意思:
1 2 3 4 5 6 7(用户输入)
0 2 4 8 9 8 5(随机数)
您是否希望用户手动输入“1 2 3 4 5 6 7”?
无论如何,这是帮助打印方面的东西:
public static void main(String[] args) {
// TODO code application logic here
Scanner input = new Scanner(System.in);
System.out.print("Enter number of exits: ");
int n = input.nextInt();
int [][] A = new int[2][n];
for(int i=0; i<A.length; i++){
for (int j = 0; j<n; j++) {
A[i][j] = (int) (Math.random()*10);
}
}
for(int[] b: A)
{
for(int k: b)
{
System.out.print(k + " ");
}
System.out.println();
}
System.out.print("Distance between exit i and exit j is: " + distance());
}