So ive been trying to get an average of this array needed, and I seem to be having trouble with it. So far, my current code just adds the numbers up, but doesnt really average them out at all:

``````import java.util.Scanner;
import java.util.Arrays;

public static void main (String[] args)
{
double result = 0;
Scanner scan = new Scanner(System.in);

for (int i = 0; i < grades.length; i++) {
System.out.print("Enter a grade between 0.0 - 100.0 (enter -1 to quit): ");

}

}
}``````

and the result is as follows:

Enter a grade between 0.0 - 100.0 (enter -1 to quit): 30.0
Enter a grade between 0.0 - 100.0 (enter -1 to quit): 50.0
Enter a grade between 0.0 - 100.0 (enter -1 to quit): 60.0
Enter a grade between 0.0 - 100.0 (enter -1 to quit): -1

any help would be appreciated.

## Featured Replies in this Discussion

• 30 + 50 + 60 = 140 140 / 100 (the number of elements in your array) = 1.4 Keep track of how many grades are being entered. Line 12: int count = 0; Line 18: count++; Line 20: result / count

You are dividing by the length of the grades array, but not all of those elements have a value. You need to divide by the actual number of entries the user has added.

How would I go about doing that? (sorry, noobie programmer)

Seems like counting them might be useful?

I mean is there a way to count the number of grades entered? I can enter however many I want up to 100, but im clueless on how to get it to see the amount of grades that were entered.

30 + 50 + 60 = 140
140 / 100 (the number of elements in your array) = 1.4
Keep track of how many grades are being entered.
Line 12: int count = 0;
Line 18: count++;
Line 20: result / count

> im clueless on how to get it to see the amount of grades that were entered
Seems like a fairly simple task for a variable.

Edit: Ah, well so much for letting you see the solution for yourself, since hfx642 has decided to just hand you a fix.

Define an int as a counter, then add one to a counter every time a new number is entered. Look at about line 16 to do this

Question Answered as of 3 Years Ago by Ezzaral, hfx642 and NormR1

``````    double[] grades = new double[100];

System.out.print("Enter a grade between 0.0 - 100.0 (enter -1 to quit): ");
System.out.println();

double sum = 0;
double ave = 0;

for (int i = 0; i < grades.length; i++)

{
break;
}