我用数组和矩阵解决了一个问题。我开始了解它是如何工作的,但我收到了以下关于矩阵行的问题。这是问题要求我做的事情:
一种。编写方法 inputArray 的定义,提示用户输入 20 个数字,并将数字存储为 alpha。
湾。编写方法 doubleArray 的定义,将 beta 的元素初始化为 alpha 中对应元素的两倍。确保您阻止该方法修改 alpha 的元素。
C。编写方法 copyGamma 的定义,将 inStock 的第一行的元素设置为 gamma,并将 inStock 的其余行设置为 inStock 先前行的三倍。确保您阻止该方法修改 gamma 的元素。
这就是我所做的:
代码
public class ArrayQuiz {
public static void main(String[]args){
int count = 0;
int [ ] [ ] inStock = new int [10][14];
int[ ] alpha = new int[20];
int[ ] beta = new int[20];
int[ ] gamma = {11, 13, 15, 17};
int[ ] delta = {3, 5, 2, 6, 10, 9, 7, 11, 1, 8};
alpha(alpha,count);
beta(beta,count,alpha);
copyGamma(inStock,gamma,count);
}
public static int alpha(int alpha[],int count){
count = 0;
System.out.println("Enter 20 numbers:");
for(int i = 0; i < 20; i++){
Scanner input = new Scanner(System.in);
alpha[i] = input.nextInt();
count = alpha[i];
}
return count;
}
public static int beta(int beta[], int count, int alpha[]){
for(int i = 0; i< 20; i++){
beta[i] = 2*alpha[i];
count = beta[i];
}
return count;
}
public static int copyGamma(int inStock[][], int gamma[], int count){
for(int i = 0; i < 10;i++){
for(int j = 0; j < 14; j++) {
if (i==0)
{
gamma[i] = inStock[i][j];
count = gamma [i];
}
else
{
inStock[i][j] = 3*inStock[i][j];
count = inStock[i][j];
}
}
}
return count;
}
}
输出没有给出错误,而且我还没有使用其他方法进行输出,因为我想确保 copyGamma 是正确的。当它表示 inStock 的第一行时,它是否表示矩阵的第一个 [] 并且对于其余的是否仅表示 inStock 的剩余行?由于 gamma 有 5 个元素 inStock 行剩下 5。所以这意味着只需将 i 乘以 3 或整个矩阵?如果我是正确的 [i] = rows 而 [j] 是列?我在那里很困惑。