如何创建一个采用整数数组并返回平均数的方法?

时间:2011-12-07 01:00:00

标签: java arrays eclipse int average

System.out.println(type integer);
int 1 = kb.nextInt();
System.out.println(type integer);
int 2 = kb.nextInt();
System.out.println(type integer);
int 3 = kb.nextInt();
System.out.println(type integer);
int 4 = kb.nextInt();
int [] integers = new int {1 + 2 + 3 + 4}
System.out.println(integers / numberofinputs?);

是的,我不知道如何将总和除以数组中的数字量。

3 个答案:

答案 0 :(得分:3)

问题:

  

如何创建一个采用整数数组并返回的方法   平均数?

答案:

public static double getAverage(int[] array)
{
    int sum = 0;
    for(int i : array) sum += i;
    return ((double) sum)/array.length;
}

答案 1 :(得分:0)

递归

double getAverage ( int [ ] array )
{
    return ( double ) ( getSum ( array , 0 , array . length ) ) / array . length ;
}

int getSum ( int [ ] array , int floor , int ceil )
{
    if ( ceil - floor < 1 ) { throw new RuntimeException ( ) ; }
    else if ( ceil - floor == 1 )
    {
         return array [ floor ] ;
    }
    else
    {
         return getSum ( floor , ( floor + ceil ) / 2 ) + getSum ( ( floor + ceil ) / 2 , ceil ) ;
    }
}

答案 2 :(得分:0)

为了尝试引导你朝着正确的方向前进,你会想要尝试将其分解成部分。我建议列出完成此任务所需的所有事项。

  • 获取值以计算平均值,将它们保存到数组中。
    • 这将需要知道数据的来源(文件,键入等)。
    • 可能还需要知道程序运行时会给出多少个值。
  • 遍历数组中的一个元素,计算所有值的总和。
    • 您可以按照Eng.Fouad的示例执行此操作。
  • 一旦得到总和,只需除以输入程序的值的数量。这是你的最终平均值。

看起来你遇到的最大问题是试图从用户那里获取价值。您使用扫描仪(我假设来自标准输入或命令行)处于正确的轨道上,但现在您需要将多个值保存到数组(或列表或其他内容)中。

我将给你一个使用数组的例子(这将需要知道将提供多少个值)。注意 - 此将无法编译。在尝试使其正常运行之前,您必须填写详细信息。

Scanner scanner = ... ; # Fill in the '...'
int totalElements = 10;  # TODO - Determine what this value should be, or get it from the user
double[] values = new double[totalElements]; # Make an array with totalElements amount of slots
int counter = 0;

while (/* fill this in with scanner method to check for another double*/) {
    values[counter] = /* fill in with scanner method to read a double*/;
    /* fill in with a way to increase the counter by 1 */
}

从这里开始,您可以开始使用函数来计算平均值。