计算数组中的平均值

ita*_*lov -4 java arrays average

我想用数组计算平均数.我希望程序要求成绩数量,并在我想要提供成绩数字之后.

在我想获得平均输出之后double.

到目前为止这是我的代码:

public class Average {

    public static void main(String[] args) 
    {
        //int n = MyConsole.readInt("Enter number of grades: " );

        int a = MyConsole.readInt("Enter grade 1: " );
        int b = MyConsole.readInt("Enter grade 2: " );
        int c = MyConsole.readInt("Enter grade 3: " );

        int[] numbers = new int[]{a,b,c};
        numbers[0] = a;
        numbers[1] = b;
        numbers[2] = c;


        int sum = 0;

        for(int i=0; i < numbers.length ; i++)
                sum = sum + numbers[i];

        double average = sum / numbers.length;

        System.out.println("Average value of array elements is : " + average);
    }
}
Run Code Online (Sandbox Code Playgroud)

Jor*_*lla 5

不知道你班级MyConsole在做什么,但我猜是Scanner:

您的代码改进将是这样的:

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    System.out.print("Enter number of grades: " );
    int n = sc.nextInt();

    int sum = 0;

    for (int i = 0; i < n; i++) {
        System.out.print("Enter grade "+ (i + 1) + ": ");
        int a = sc.nextInt();
        sum += a;
    }

    double average = sum / n;

    System.out.println("Average value of array elements is : " + average);
}
Run Code Online (Sandbox Code Playgroud)

输出(2级):

Enter number of grades: 2
Enter grade 1: 1
Enter grade 2: 5
Average value of array elements is : 3.0
Run Code Online (Sandbox Code Playgroud)

输出(5个等级):

Enter number of grades: 5
Enter grade 1: 10
Enter grade 2: 20
Enter grade 3: 30
Enter grade 4: 10
Enter grade 5: 50
Average value of array elements is : 24.0
Run Code Online (Sandbox Code Playgroud)

注意

double average = sum / n;
Run Code Online (Sandbox Code Playgroud)

执行int分区,所以你不会有任何小数位!我建议快速演员:

double average = sum / (double) n;
Run Code Online (Sandbox Code Playgroud)

随着新的输出:

Enter number of grades: 2
Enter grade 1: 1
Enter grade 2: 4
Average value of array elements is : 2.5
Run Code Online (Sandbox Code Playgroud)

GUESS使用你自己的班级:

public static void main(String[] args) {
    int sum = 0;

    int n = MyConsole.readInt("Enter number of grades: " );

    for (int i = 0; i < n; i++) {
        int a = MyConsole.readInt("Enter grade "+ (i + 1) + ": ");
        sum += a;
    }

    double average = sum / n;

    System.out.println("Average value of array elements is : " + average);
Run Code Online (Sandbox Code Playgroud)