Java 计算循环中的平均值
我刚刚发现,当我计算第二个用户的平均值时,我得到了一个不同的结果。例如,如果我为第一个用户10,10,10,20,20添加此数字。我得到14.0,这是正确的。但是当我为第二个用户输入相同的数字时,我得到了28.0?有什么想法吗Java 计算循环中的平均值,java,Java,我刚刚发现,当我计算第二个用户的平均值时,我得到了一个不同的结果。例如,如果我为第一个用户10,10,10,20,20添加此数字。我得到14.0,这是正确的。但是当我为第二个用户输入相同的数字时,我得到了28.0?有什么想法吗 import java.util.Scanner; public class midterm { public static void main(String args[]) { Scanner kb = new Scanner(System.in)
import java.util.Scanner;
public class midterm
{
public static void main(String args[])
{
Scanner kb = new Scanner(System.in);
int max = Integer.MIN_VALUE;
int min = Integer.MAX_VALUE;
int sum = 0;
double average=0;
int count = 0;
int salary_annually = 0;
for(int employee =1; employee <= 2; employee++)
{
System.out.println("Employee: " + employee);
for(int year=1; year <= 5; year++)
{
System.out.println("Please Enter the Salary for Year: " + year);
salary_annually = kb.nextInt();
sum += salary_annually ;
average = (sum) / 5.0;
if (min >= salary_annually)
{
min = salary_annually;
}
if (max <=salary_annually)
{
max = salary_annually;
}
}
System.out.println("The average is " + average);
System.out.println("The higher number " + max);
System.out.println("The the lowest number " + min);
}
}
}
import java.util.Scanner;
公共课期中考试
{
公共静态void main(字符串参数[])
{
扫描仪kb=新扫描仪(System.in);
int max=整数的最小值;
int min=整数最大值;
整数和=0;
双平均=0;
整数计数=0;
年薪=0;
对于(int employee=1;employee您需要在循环结束时为零sum
。现在,它只是在进入下一次迭代时,随着旧值保留在内存中而不断增加。sum=0;//这是在第二次循环之前
sum = 0; // this before 2nd loop
int max = Integer.MIN_VALUE; // these too.
int min = Integer.MAX_VALUE;
for(int year=1; year <= 5; year++)
{
.
.
.
}
average = (sum) / 5.0; // this after 2nd loop
int max=Integer.MIN_VALUE;//这些也是。
int min=整数最大值;
对于(int year=1;year for)(int employee=1;employee)您在计算和的同一个循环中对其进行调零。这不起作用。只需在该循环外对其进行调零。无论是在输入之前还是完成之后。