询问用户数组的大小应该是

时间:2015-10-04 16:07:09

标签: java arrays average

import java.util.Scanner;
/**
 * Created by b00598439 on 30/09/2015.
 */
public class Assessment1 {




    public static void main (String args[]) {
        Scanner in = new Scanner(System.in);



        System.out.println("Enter number 1 for arrays, 2 to use ArrayLists, or any other number to end the program");
        for (int i = 1; i<=2; i=>3; i++){


            answer[i] nextInt(); //Get integer entered, if different from 1 or 2, if any other number then quit
        }

        System.out.println("What size of array would you like?");

        int SIZE = in.nextInt();  //What size should the array be?
        int [] answer = new int[SIZE];           //Lets user read into the program

        System.out.println("The total of the numbers in the program is: " + answer);  //Gives total of numbers

        System.out.println("The average of the numbers in the program is: " + avg);



        int count = 0;
        for (int i = 0) ;          //Calculating the average

我一直在尝试将代码排序以写入屏幕,然后继续查看数组的大小。我必须让用户选择选项1或选项2,如果未选择选项1或2,则必须终止程序。我甚至无法打印或工作的第一部分,这是我必须做的: 1)如果选择了数组选项,程序应该:
•询问用户阵列的大小应该是多少 •让用户将数字读入数组  •输出存储在阵列中的数字总数
•输出存储在数组中的数字的平均值

我一直坐在这里4个小时仍然无处可去

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:0)

好的,我开发了更多的代码。我把它放在一个while循环中...它回到开头并要求再次输入选项...你输入除1或2以外的任何数字然后你就离开了。我测试了它,它在控制台中运行正常。只是评论..你得到整数值的平均值...如果你想得到双打,那么你必须使用双打并使用nextDouble而不是nextInt。希望它有所帮助。

import java.util.Scanner;

public class Assessment{
public static void main(String[] args){
    // Scanner to get the initial number options
    Scanner in = new Scanner(System.in);

    // Scanner to get numbers to sum
    Scanner numSc = new Scanner(System.in);

    // Declaration of variables and array
    int answer = 0; //You need int answer, don't need an array by now
    int numAnswer;
    int sum = 0;
    int average;

   // Loop the program 
   while (true){
     System.out.println("Enter number 1 for arrays, 2 for arraylists, any other to quit");

      // Using in Scanner to test for integer input
      if(in.hasNextInt()){

          // If there is an integer then give it to numAnswer
          numAnswer = in.nextInt();

          // What to do if the option is 1, 2 or other number
          switch(numAnswer)
          {
              case 1:
              case 2:
                  answer = numAnswer;
                  break;
              default:
                  System.exit(0); // Out of the program
          }
      } 

      // If answer variable got number 1
      if (answer == 1){
          // New Scanner to get the size of the array
          Scanner sizeSc = new Scanner(System.in); 

          System.out.println("Enter the size of the array: ");

          // Getting the size of the array with sizeSc Scanner          
          int size = sizeSc.nextInt();

          // Making a new array with the size of size variable 
          int[] inputNums = new int[size]; 

          // Looping to get input numbers
          for (int i = 0; i < inputNums.length; i++){  
              System.out.println("Enter a number in the array: ");

          //Getting the numbers from console with numSc Scanner
              inputNums[i] = numSc.nextInt(); 
              sum += inputNums[i]; //Getting the sum of each number
          }

          average = (sum/size);
          System.out.println("Sum of numbers: " + sum);
          System.out.println("Average of numbers: " + average);
          System.out.println(" ");
       } else {
          System.out.println("YOUR CODE TO THE LISTARRAY");
       }
     }
   }
}

答案 1 :(得分:0)

这可以通过多种方式完成,我已经以一种简单的方式完成了这一步,因此您可以逐步理解整个代码。顺便说一句,如果选项2是,那么您还没有解释您希望程序执行的操作您可以通过删除“案例2:”来删除选项2.请参阅代码。

import java.util.Scanner;
    public class Assessment1 {
    public static void main (String args[]) {
          int average,sum=0;
          Scanner input = new Scanner(System.in);
          Scanner length = new Scanner(System.in);
          Scanner option = new Scanner(System.in);

          System.out.println("Enter 1 for arrays, 2 to use ArrayLists, or any other number to end the program");
          int x=option.nextInt();
          switch(x){
          case 1:
          System.out.println("Input array size: ");
          int len=length.nextInt();
          int[] numbers = new int[len];
          for (int i = 0; i < numbers.length; i++)
          {
              System.out.println("Please enter number");
              numbers[i] = input.nextInt();
              sum += numbers[i];
          }
          average=sum/len;
          System.out.println("Total sum of all numbers: "+sum);
          System.out.println("Average of all numbers: "+average);
          case 2:
              //insert your "ArrayList code here,you haven't explained what you     want here
          default:
              System.out.println("Program terminated.");
          }
}
}