如何在java中将整数存储到变量和computeAvg中?
我正在尝试编写一个Java程序:如何在java中将整数存储到变量和computeAvg中?,java,variables,math,Java,Variables,Math,我正在尝试编写一个Java程序: 在main方法中,提示用户输入整数 将数字存储在名为inputNum的变量中 将inputNum传递给名为computeAvg的方法 在computeAvg中,提示用户输入两倍于inputNum的值computeAvg方法应计算并返回用户输入的实数平均值 在主方法中打印结果 这是我的密码 public static void main(String[] args) { Scanner keyboard = new Scanner(System.in)
- 在main方法中,提示用户输入整数李>
- 将数字存储在名为
的变量中inputNum
- 将
传递给名为inputNum
的方法computeAvg
- 在
中,提示用户输入两倍于computeAvg
的值inputNum
方法应计算并返回用户输入的实数平均值computeAvg
- 在主方法中打印结果
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter a integer? ");
int x;
x = keyboard.nextInt();
int inputnum=x;
computeAvg();
}
public static void computeAvg() {
System.out.println(inputnum);
System.out.println("Enter double values as inputnum ");
int y;
y=keyboard.nextInt();
}
}
您的代码中有几个更改需要完成:
static Scanner keyboard = new Scanner(System.in);
public static void main(String[] args) {
System.out.println("Please enter a integer? ");
int x;
x = keyboard.nextInt();
int inputnum=x;
System.out.println("The average is"+computeAvg(inputnum));
}
public static double computeAvg(int y)
{
double[] arr = new double[y];
System.out.println(y);
for (int i = 0; i < y; i++) {
System.out.println("Enter double values ");
arr[i] = keyboard.nextDouble();
}
double sum = 0;
for(double a:arr){
sum +=a;
}
System.out.println(sum);
double average = sum/arr.length;
return average;
}
接下来创建一个双精度值sum
,将其相加并除以以获得平均值(另一个双精度值)
最后将平均值返回到它打印的主方法
我使用了静态扫描仪键盘=新扫描仪(System.in)因为我在两种方法中使用了相同的扫描仪
请随时询问有关代码的任何问题 我希望代码中的注释能够不言自明地说明问题所在以及代码的工作原理:
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter an integer? ");
// here you are asking for the number of double numbers that will be
// entered
int inputnum = keyboard.nextInt(); // asking for the int input (varibale
// is stored in inputnum)
System.out.println("Average for all " + inputnum + " numbers is: "
+ computeAvg(inputnum));
}
public static double computeAvg(int inputnum) {
Scanner keyboard = new Scanner(System.in);
double eachInput = 0.0;
double sumInputs = 0.0;
for (int counter = 1; counter <= inputnum; counter++) {
System.out.println("Please enter a double as input #" + counter
+ ": ");
eachInput = keyboard.nextDouble(); // asking for double input
sumInputs += eachInput; // adding up each input
}
// calculating and returning average
return sumInputs / (double) inputnum;
}
publicstaticvoidmain(字符串[]args){
扫描仪键盘=新扫描仪(System.in);
System.out.println(“请输入一个整数?”);
//在这里,您要求的是将要使用的双倍数字的数量
//进入
int inputnum=keyboard.nextInt();//请求int输入(变量)
//存储在inputnum中)
System.out.println(“所有数字的平均值”+inputnum+”是:
+computeAvg(inputnum));
}
公共静态双计算vg(int-inputnum){
扫描仪键盘=新扫描仪(System.in);
双输出=0.0;
双输入=0.0;
对于(int counter=1;如果需要双精度计数器,请使用double y=keyboard.nextDouble()
我只是在想,谢谢你指出这一点。我同意Thiloif x是用户需要输入数字的次数,那么你应该在你的computeAvg
方法上使用循环。保留本教程的链接,它们是金色的。虽然不是一个失败的投票人,但问题对于实际的投票人来说有点模糊您遇到的问题以及您试图解决的问题,尽管您提供了一个尝试,这一直被认为是一个优点。非常感谢您花时间解释它。我开始了解这个问题。非常感谢您!!!因为您是初学者。探索更多,不要轻易放弃问题。祝您未来好运。我该怎么做确认正确并关闭问题。仅供参考:@A_N_Y_R有效地处理scanner变量。
for(double a:arr){
sum +=a;
}
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter an integer? ");
// here you are asking for the number of double numbers that will be
// entered
int inputnum = keyboard.nextInt(); // asking for the int input (varibale
// is stored in inputnum)
System.out.println("Average for all " + inputnum + " numbers is: "
+ computeAvg(inputnum));
}
public static double computeAvg(int inputnum) {
Scanner keyboard = new Scanner(System.in);
double eachInput = 0.0;
double sumInputs = 0.0;
for (int counter = 1; counter <= inputnum; counter++) {
System.out.println("Please enter a double as input #" + counter
+ ": ");
eachInput = keyboard.nextDouble(); // asking for double input
sumInputs += eachInput; // adding up each input
}
// calculating and returning average
return sumInputs / (double) inputnum;
}