2015-03-13 9 views
-1

Как бы я взял список целых чисел, введенных пользователем одним способом, и смог вызвать этот метод и вычислить max и min значение, а также среднее, в отдельных методах?Запрос ввода целых чисел в список int (без разрешенных массивов)

Проблема заключается в следующем: запрашивает у пользователя количество учащихся в классе. Используя цикл, напишите программу, в которой ученики будут сдавать экзамены по одному за другим. Создайте меню для отображения следующих параметров: 1. Минимальный класс 2. Максимальный класс. 3. средний. и т.д.

NO МАССИВЫ РАЗРЕШЕНЫ использовать отдельные МЕТОДЫ

импорта java.util.Scanner; общественного класса hw07_emena {

public static double gradeEnter(double sum, double min, double max) 
{ 
    Scanner keyboard = new Scanner(System.in); 
    System.out.print("Please enter the amount of students in a class: "); 
    int amtStudents = keyboard.nextInt(); 

    int i=0; 
    sum=0; 
    if(i<amtStudents) 
    { 
     System.out.println("Please enter the grade for student " + (i+1)); 
     double stGrade = keyboard.nextDouble(); 
     sum = sum+stGrade; 
     i++; 

     return sum; 
    } 




} 


/*public static void main(String[] args) 
{ 
    Scanner keyboard = new Scanner(System.in); 
    System.out.print("Please enter the number of students in a class: "); 
    int amtStudents = keyboard.nextInt(); 


    double sum = 0; 
    int i=0; 
    while(i<=amtStudents) 
    { 
     System.out.println("Please enter the grade of student " + (i+1)); 
     double stGrade = keyboard.nextDouble(); 
     i++; 



     double minGrade = 9999; 
     double maxGrade = -9999; 



     double classAvg = 0; 

      if(i==amtStudents) 
      { 

       System.out.println(""); 
      } 
    } 




} 
*/ 

}

+0

Нет разрешенных массивов? Так разрешен ли ArrayList? Как насчет списка? Карта? ??? –

+0

@DonLarynx В заголовке явно указано, что следует использовать «Список <>». –

+0

Нет массивов или списка массивов, к сожалению. Список разрешен, и я не уверен, что такое карта, но я уверен, что это разрешено. Это то, что у меня есть до сих пор: – Elizabeth

ответ

2

Попробуйте это:

public static void main(String[] args) { 

    Scanner sc = new Scanner(System.in); 
    int numStudents = sc.nextInt(); 
    int max = Integer.MIN_VALUE; 
    int min = Integer.MAX_VALUE; 
    int total = 0; 
    for (int i=0; i<numStudents; i++){ 
     int grade = sc.nextInt(); 
     max = Math.max(max, grade); 
     min = Math.min(min, grade); 
     total += grade; 
    } 
    double average = total/numStudents; 
    //Your menu will be specific to you. It will need to go here and return 
    //average, min, or max 

} 

Вам не нужно хранить оценки, только результаты.

+0

Спасибо, это на самом деле намного проще, чем отдельные методы. – Elizabeth

Смежные вопросы