Java Sqrt和数组中的数学
我很难理解如何编写这个数组。我需要打印10x5(总共50个元素),前25个元素等于它所在索引的sqrt,后25个元素等于索引的3*。是的,这是家庭作业,但我不是要求你帮我做,我只是需要帮助!我在使用Java Sqrt和数组中的数学,java,Java,我很难理解如何编写这个数组。我需要打印10x5(总共50个元素),前25个元素等于它所在索引的sqrt,后25个元素等于索引的3*。是的,这是家庭作业,但我不是要求你帮我做,我只是需要帮助!我在使用数学时出错,说我不能同时使用double和double数组。以下是我到目前为止的情况: public class snhu4 { public static void main(String args[]) { double alpha[][] = new double[10]
数学时出错,说我不能同时使用double和double数组。以下是我到目前为止的情况:
public class snhu4 {
public static void main(String args[]) {
double alpha[][] = new double[10][5];
double[] sum, sum2;
for (int count=0; count<=25;count++) {
alpha[count]= Math.sqrt(count);
}
for (int count=26; count<=50;count++) {
alpha[count]= count *3;
}
for (int count=0; count<=50;count++) {
System.out.print(alpha[count]);
}
}
}
公共类snhu4{
公共静态void main(字符串参数[]){
双阿尔法[][]=新双[10][5];
双[]和,sum2;
对于(int count=0;count因为alpha
是多维数组,所以不能像普通数组那样引用其元素
int-myarray[][]=新的int[2][2];
在上面的示例中,数组myarray
是多维的。如果我想访问第一个数组中的第二个元素,我会这样访问它:
int j;
for(int i = 0; i<25; i++)
{
j=i/10; //integer division will return 0 for i<10, 1 for 10<i<20, etc..
alpha[i%10][j] = Math.sqrt(i);
}
int-myint=myarray[0][1]
您正试图使用普通数组的访问权限访问多维数组。更改
alpha[count]
到
alpha[0][count]
或类似的
有关多维数组的详细信息,请阅读。您将alpha定义为二维数组,第一维为10项,第二维为5项,5x10为50个元素
使用数组为这些元素赋值时,必须使用两个索引调用数组,每个维度一个索引:
alpha[i][j] = /*double value*/; //with 0<=i<=9 and 0<=j<=4
alpha[i][j]=/*双值*/;//如果为010x5,则它似乎是一个输出约束,而不是一个设计约束
您使用的是Java,所以请使用Java结构,而不是C语言结构;
专门将值存储在列表中,而不是数组中
以下是一些提示:
列表值列表=新的ArrayList()
对于(int索引=0;索引<25;++索引)
整数currentValue=Math.sqrt(索引)
valuesList.add(当前值)
对于(整数指数=25;指数<50;++指数)
整数currentValue=索引*3
valuesList.add(当前值)
整数计数=1
用于(当前整数:valuesList)
如果((计数%5)==0)//写一个换行符
系统输出打印(当前)
++计数
问题是什么?结果与您希望得到的结果有何不同?请思考出现错误的位置和原因。错误包含一个行号供参考。我实际上没有得到任何结果。我不知道如何使用数组的数学运算。它不会让我混合双[]使用双精度。混合是什么意思?要引用2D数组,需要引用两个索引,而不仅仅是一个。因此,例如,要访问第一个元素,必须说alpha[0][0]=Math.sqrt(count)
实际上,第一个维度有11个元素,第二个维度有6个。No,它的10和5。数组创建参数取要创建的元素数。欢迎使用int[]Array=new int[10]和Array.length自行检查