Java 输出错误结果的程序数的平均值
我试图写一个简单的程序来找出3个int值的平均值,但它似乎总是得到错误的平均值Java 输出错误结果的程序数的平均值,java,java.util.scanner,Java,Java.util.scanner,我试图写一个简单的程序来找出3个int值的平均值,但它似乎总是得到错误的平均值 import java.util.Scanner; public class IntegerAverage { public static void main(String[] args) { Scanner in = new Scanner(System.in); int num1; int num2; int num3; // Ask user Sy
import java.util.Scanner;
public class IntegerAverage {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int num1;
int num2;
int num3;
// Ask user
System.out.println("Input 1st number");
num1 = in.nextInt();
System.out.println("Input 2nd number");
num2 = in.nextInt();
System.out.println("Input 3rd number");
num3 = in.nextInt();
// Print answer
System.out.println("The average is:"+ ((num1 + num1 + num3)/3));
}
}
非常感谢您的帮助应该是:
import java.util.Scanner;
public class IntegerAverage {
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int num1;
int num2;
int num3;
// Ask user
System.out.println("Input 1st number");
num1 = in.nextInt();
System.out.println("Input 2nd number");
num2 = in.nextInt();
System.out.println("Input 3rd number");
num3 = in.nextInt();
// Print answer
System.out.println("The average is:"+ ((num1 + num2 + num3)/3));
}
}
您意外地添加了两次num1,却忘记了num2。除了有两次
num1
并且缺少num2
,如上所述,您将始终只得到整数结果,例如对于num1=1
,num2=2
和num3=2
作为结果,您的代码将绘制1
,而不是1.667
。您可以通过编写
System.out.println(“平均值为:”+((num1+num2+num3)/3.0)代码>是否应该是(num1+num2+num3)/3
?您有num1
两次。整数除法?它说我可以在9分钟内接受,我很抱歉,我一有机会就去做。:)