2013-10-11 4 views
0

У меня есть программа, которая просит пользователя выбрать несколько элементов. Затем программа запрашивает у пользователя выбор чисел столько раз, сколько указано количеством элементов. Как бы я нашел дисперсию этого набора чисел, используя только массивы и либо во время, либо для циклов. Ничего особенного, поскольку я в старшей школе. Ниже мой текущий код:Добавление массива в java?

//write an app that finds the variance of a set of numbers 
class temp1 { 
    public static void main(String args[]) 
    { 
    int counter = 0; 
    String question; 
    question = "How many elements do you want?: "; 
    EasyReader console = new EasyReader(); 
    System.out.println(question); 
    int answer; 
    int answer2; 
    answer = console.readInt(); 
    int[] numbers = new int[answer]; 
    int mean; 
    System.out.println(); 
    while(true) 
    { 
    System.out.println("Please enter a number: "); 
    answer2 = console.readInt(); 
    counter++; 
    if(counter==answer) 
    { 
    break; 
    } 
    } 
    mean = (numbers[0]+numbers[1]+numbers[2]+numbers[answer])/answer; 
    System.out.print(mean); 
    } 
    } 
+1

Вы используете петлю перебрать элементы и вычислить его. Проверьте свои заметки о том, как использовать циклы и как рассчитать дисперсию, а затем используйте Java для ее программирования. –

+0

Я знаю, как найти дисперсию, это просто я не понимаю массивы. Я не уверен, как добавить содержимое массива. Я бы использовал цикл для этого? –

+0

Пройдите [этот учебник] (http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html). –

ответ

0

Ваша программа может быть как:

// написать приложение, которое находит дисперсию набора чисел

class temp1 
{ 
    public static void main(String args[]) 
    { 
     int counter = 0; 
     String question; 
     question = "How many elements do you want?: "; 
     EasyReader console = new EasyReader(); 
     System.out.println(question); 
     int answer; 
     int answer2; 
     answer = console.readInt(); 
     int[] numbers = new int[answer]; 
     int mean; 
     System.out.println(); 
     while (true) 
     { 
      System.out.println("Please enter a number: "); 
      answer2 = console.readInt(); 
      numbers[counter] = answer2; 
      counter++; 
      if (counter == answer) 
      { 
       break; 
      } 
     } 
     counter = 0; 
     int sum = 0; 
     while(true) 
     { 
      sum = sum + numbers[counter]; 
      counter++; 
      if(counter == answer) 
      { 
       break; 
      } 
     } 
     mean = sum/answer; 
     System.out.print(mean); 
    } 
} 
+0

Спасибо. Является ли команда Scanner той же, что и EasyReader? –

+0

Я не знаю ни одного EasyReader, сканер поставляется Java, класс EasyReader может быть предоставлен вам вашим преподавателем. – user1688129

+0

Думаю, что это так. Сканер читает ввод правильно? –