如何在Java中定义矩阵中的元素,其中每一行元素都会增加一些值?
例如,我想制作这种矩阵:如何在Java中定义矩阵中的元素,其中每一行元素都会增加一些值?,java,arrays,multidimensional-array,Java,Arrays,Multidimensional Array,例如,我想制作这种矩阵: 1 1 1 1 1 1 4 4 4 4 4 4 9 9 9 9 9 9 16 16 16 16 16 16 25 25 25 25 25 25 36 36 36 36 36 36 49 49 49 49 49 49 到目前为止,我的代码是: public static void main(String[] args) { int matrix[][] = new int[6][8]; for (in
1 1 1 1 1 1
4 4 4 4 4 4
9 9 9 9 9 9
16 16 16 16 16 16
25 25 25 25 25 25
36 36 36 36 36 36
49 49 49 49 49 49
到目前为止,我的代码是:
public static void main(String[] args) {
int matrix[][] = new int[6][8];
for (int i = 0; i < matrix.length; ++i) {
for (int j = 0; j < matrix.length; j++) {
matrix[i][j] = i + 1 ;
}
}
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix.length; j++) {
System.out.print(matrix[i][j] + "\t");
}
System.out.println();
}
}
}
publicstaticvoidmain(字符串[]args){
整数矩阵[][]=新整数[6][8];
对于(int i=0;i
如果仔细观察,结果矩阵中的每个元素都是行号的平方
例如
Row 1 -> Numbers 1
Row 2 -> Numbers 4
Row 3 -> Numbers 9
...
Row 7 -> Numbers 49
and so on...
所以你不需要以前的数字来计算新的
在现有代码中进行简单调整,同时填充矩阵,可以:
for (int i = 0; i < matrix.length; ++i) {
for (int j = 0; j < matrix[0].length; j++) {
matrix[i][j] = (int) Math.pow(i + 1, 2);
}
}
for(int i=0;i
和使用以下方法打印矩阵:
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[0].length; j++) {
System.out.print(matrix[i][j] + "\t");
}
System.out.println();
}
for(int i=0;i
公共类矩阵{
公共静态void main(字符串[]args){
整数矩阵[][]=新整数[7][8];
对于(int i=0;i
您可以使用Java.lang.Math.pow()方法。但由于这只是一个sqaure函数,我看不出使用矩阵[I][j]=(I+1)*(I+1);
,在您的第8行插入此代码。您当前代码遇到的具体问题是什么?您正在将“行数加1”放在在每个元素中,你想要的是“行数加一”的平方(即,“行数加一”乘以“行数加一”),我无法找出正确的算法。无论我尝试什么,我都无法得到我想要的矩阵。无论我尝试什么,我都无法得到当前的解决方案。我想我已经得到了所有可能的解决方案,除了我需要的解决方案。另外,(int j=0;j
应该是(int j=0;jmatrix.length
给你行数,matrix[0].length
为您提供了列数。@ShanuGupta非常感谢您的解释。我是新来的她。您能告诉我您应该如何正确地描述我的问题吗?您将如何描述我的问题?以便下次了解。。
public class Matrix {
public static void main(String[] args) {
int matrix[][] = new int[7][8];
for (int i = 0; i < matrix.length; ++i) {
for (int j = 0; j < matrix.length; j++) {
matrix[i][j] = i + 1 ;
}
}
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix.length; j++) {
//Change this line,looking for this?
System.out.print(matrix[i][j]*matrix[i][j] + "\t");
//Describe your specific problem properly
}
System.out.println();
}}