【发布时间】:2016-09-26 03:03:06
【问题描述】:
我是初学者程序员,我陷入了试图了解如何使用数组的兔子洞。我正在尝试使用多维数组创建一个表,并且我正在寻找一个包含 7 行和 5 列的表。
- 第 1 列 = 将从用户输入中获取值。此输入存储在一个数组中。
- 第 2 列 = 将打印该数组中的最高输入。
- 第 3 列 = 将打印该数组中的最低输入
- 第 4 列 = 将打印增量总计。即当前输入+先前输入。
- 第 5 列 = 将采用增量平均值。即总计/指数
下面的完整代码
import java.util.Scanner;
public class Numbers {
public static void main(String[] args)
{
//----User Input - Add values to array ----//
Scanner keyboard = new Scanner(System.in);
int places = 7;
int [] values = new int [places];
int sum = 0;
System.out.println("Enter a Numbers:");
for (int count = 0; count < places; count++)
{
values[count] = keyboard.nextInt();
System.out.println(values[count]);
}
//----------------Total---------------------//
for (int numb : values)
{
sum = sum + numb;
}
System.out.println("\n Total:" + sum);
//----------Average------------------------/
double avg = 0;
if (values.length > 0)
{
avg = sum / values.length;
}
System.out.printf("\n Average:"+ avg);
//---------Table Start---------------------//
int [] [] table = new int [7][5];
for (int row =0; row < 7; row++)
for (int column = 0; column < 5; column++)
table [row][column] = getTable(column, column, column, column, avg);
System.out.println("\n\nIndex\tInput\tHigest\tLowest\tTotal\tAverage");
for (int row = 0; row < 7; row++)
{
System.out.print((row + 1) + " ");
for (int column = 0; column < 5; column++)
System.out.print("\t " + table[row][column] + " ");
System.out.println();
}
}
public static int getTable(int input, int highest, int lowest, int total, double average) {
/* TO DO:
* - add each user input from values array into Input column
*
* - add highest/lowest values in the Highest/Lowest column
*
* - add each of the array element total in Total column - this column should take previous Total plus current total.
* i.e Total = Total + Input
*
* - add Average - Current average value.
*/
return 0;
}
}
我不知道如何让我的代码每次使用不同的值填充每一行。
例如:
索引 1
- 第一列取值数组的第一个值
- 第二列:取值数组中的最大值
- 第三列:取值数组的最小值
- 第四列:取值数组的前一个元素加上当前值
- 第 5 列:取总数/索引
我知道可能需要创建一个方法来让我的程序循环,但我只是不知道该怎么做。我尝试了几种不同的方法,但我只是感到困惑。在下面屏幕截图的左角,是列的外观。注意它们是如何返回 0 的,我知道这是来自我创建的 getTable 方法,它就是这样做的。
【问题讨论】:
标签: java arrays multidimensional-array