【发布时间】:2014-11-18 06:12:58
【问题描述】:
编写一个程序,从用户那里读取 10 个值的列表。将值放入数组中。程序应读取数组,然后计算并显示偶数输入值的平均值和奇数输入值的平均值。这应该使用对象、方法和测试器类来完成。
我不知道为什么会收到错误消息:
二元运算符的操作数类型错误。
我不知道要改变什么。我知道我的模组有问题 (%)。
这是我到目前为止的Average 课程:
public class Average
{
private int[] numbers = new int[10];
double aveEven, aveOdd,sumEven=0,sumOdd=0;
int oddCounter=0, evenCounter=0;
public Average(int[] n)
{
numbers = n;
if (numbers % 2 == 0)/something is wrong here/
{
evenCounter++;
sumEven+=n;
}
else
{
oddCounter++;
sumOdd+=n;
}
}
public void aveEven()
{
for (int i = 0; i < numbers.length; i++)
{
aveEven = sumEven/evenCounter;
System.out.println("The even average is: " + aveEven);
}
}
public void aveOdd()
{
for(int i = l; i < numbers.length; i++)
{
aveOdd = sumOdd/oddCounter;
System.out.println("The odd average is: " + aveOdd);
}
}
}
对于AverageTester 类,我有以下内容:
import java.util.Scanner;
public class AverageTester
{public static void main(String[] args)
{
int[] integer = new int[10];
Scanner input = new Scanner(System.in);
for(int i=0 ; i < 10 ; i++)
{
System.out.print("Please enter a number : ");
integer[i] = input.nextInt();
}
Average example = new Average(integer);
example.aveOdd();
}
}
另外,如果您发现任何其他可能有问题的地方,请告诉我。 谢谢。
【问题讨论】:
-
您试图将
array与2分开,但array不是数字;它包含数字。你应该遍历array中的所有项目并用它来做你的数学。