该程序应该做的是:用户应输入值的数量,然后获取值列表中偶数的平均值。我被困在需要获得偶数值的地方以获得平均值。
import javax.swing.JOptionPane;
class SumOfEven {
public static void main(String args[])
{
int n;
int sum=0;
double avg;
String Numbers;
int even;
Numbers = JOptionPane.showInputDialog("How Many Numbers In The List ??");
n = Integer.parseInt( Numbers);
for(int i=0;i<=n;i++)
{
if(i%2==0)
{
System.out.println("Number of Even Numbers In This List = "+i);
}
}
for(int x=0;x<=n;x+=2){
sum+=x;
}
avg=sum/n;
System.out.println("sum of even numbers is =" +sum);
System.out.println("avgerage of even numbers is =" +avg);
System.exit(0);
}
}
答案 0 :(得分:1)
试试这个
int count = 0;
for(int i=0;i<=n;i++)
{
if(i%2==0)
{
++count;
}
}
System.out.println("Number of Even Numbers In This List = "+count);
答案 1 :(得分:1)
使用计数器以这种方式获得偶数值(c是计数器):
int c = 0;
for(int i=0;i<=n;i++)
{
if(i%2==0)
{
c++;
}
}
System.out.println("Number of even number in list = "+ c);
答案 2 :(得分:0)
当你将它除以2时,偶数的余数为零。
因此,你可以使用类似的东西:
if ((number % 2) == 0)
evenCount++;
答案 3 :(得分:0)
在 Java 8 中,您可以将Stream API用于此
long count = IntStream.range(0, n).filter(e -> e % 2 == 0).count();
答案 4 :(得分:0)
如果您有连续的数字0..n,那么其中一半将是偶数。所以,假设你将0作为偶数:
int countOfEven = n/2 + 1;
如果您的数字不是以0开头但具有不同的值,则可以执行以下操作:
int min = ...; // your minimum value
int max = ...; // your maximum value
int countOfEven = (max - min) / 2;
if(min % 2 == 0) {
countOfEven += 1;
}