Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java中将整数存储到变量和computeAvg中?_Java_Variables_Math - Fatal编程技术网

如何在java中将整数存储到变量和computeAvg中?

如何在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)

我正在尝试编写一个Java程序:

  • 在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;
}