2013-12-02 3 views
-2

В настоящее время я перерабатываю проблему, которую я пропустил в своей викторине, которая попросила меня определить и использовать конструкторы для класса Student вместо использования конструкторов по умолчанию. И в классе GradeCalculator мне нужно будет генерировать среднесрочные и окончательные оценки с использованием генератора случайных чисел. Я посмотрел на аналогичные примеры, представленные в книге, но я все еще не мог понять, почему моя программа продолжает получать ошибки. Может ли кто-нибудь дать мне несколько намеков или указать мне в правильном направлении? Любая помощь будет принята с благодарностью!Как рассчитать оценки с использованием генератора случайных чисел?

public class Student { 
private int midterm; 
private int finalExam; 

public double getMidterm() 
{ 
return midterm; 
} 
public double getFinalExam() 
{ 
return finalExam; 
} 
public double getFinalGrade() 
{ 
return midterm * 0.35 + finalExam * 0.65; 
} 

public void showGrades() 
{ 
System.out.print("Student : "); 
System.out.printf(", Midterm is: %.2f. Final Exam is: %.2f. Final Grade is: %.2f \n", midterm, finalExam, getFinalGrade()); 
} 

} 

import java.util.Random; 

public class GradeCalculator { 
public static void main(String[] args) 
{ 

int sum; 
Student[] studentArray = new Student[3]; 

for (int index = 0; index < studentArray.length; index++) 
{ 
Student s = new Student(); 

System.out.print("Student" + (index+1) + ": "); 
Random midterm = new Random(); 
System.out.print(", Midterm is: " + midterm.nextInt(100)); 
Random finalExam = new Random(); 
System.out.print(", Final exam is: " + finalExam.nextInt(100)); 
sum = midterm + finalExam; 
System.out.println(", Final Grade is: " + sum); 

studentArray[index] = s; 

} 

for(int i = 0; i < studentArray.length; i++) 
{ 
Student s = studentArray[i]; 
s.showGrades(); 
} 

double sum = 0.0; 
double averageGrade; 
for(int i = 0; i < studentArray.length; i++) 
{ 
double finalGrades = studentArray[i].getFinalGrade(); 
sum = sum + finalGrades; 
} 
averageGrade = sum/studentArray.length; 
System.out.printf("The average final grade is: %.2f", averageGrade); 

} 
} 

вот собственно вопрос:

  1. Student класс Атрибуты Создать класс Student с 2 атрибутов (переменных экземпляра), в том числе ◦ среднесрочному (интермедиат) ◦ finalExam (интермедиат)

    Методы Определите геттеры для каждого атрибута. Поэтому вам нужно создать всего 2 геттера. Определите метод getFinalGrade, который вычисляет окончательный класс в соответствии со следующей схемой сортировки. После вычисления верните результат окончательной оценки. ◦ Сортировка: ▪ Среднесрочный: 35% ▪ Итоговый экзамен: 65% Определите метод, showGrades, который выводит детали атрибутов. Оценки должны отображаться как число с двумя десятичными знаками. (Смотрите пример) ◦ Выходной пример: «Student [1], Среднесрочный: 90,00, Финальный экзамен: 80,00, Final Оценка: 82,00»

  2. GradeCalculator класс Создать класс GradeCalculator и поставить все (Шаг 1 к шагу 4 ниже) в основном методе. Шаг 1: создайте массив Student, названный studentArray, длина которого равна 3. Шаг 2: создайте 3 студенческих объекта, используя цикл. Используйте генератор случайных чисел для генерации числа от 0 до 100 (как для 0, так и 100 включительно) для создания среднего класса и итогового экзамена для ученика. Сохраните их в соответствующих атрибутах. После того, как все значения установлены, сохраните вновь созданный объект Student в studentArray. Шаг 3: loop studentArray, чтобы распечатать детали каждого ученика, вызывая showGrades. Шаг 4: рассчитать средний итоговый уровень этих 3 учеников и распечатать его на экране. Оценки должны отображаться как число с двумя десятичными знаками. Выходной пример: «Средняя итоговая оценка составляет: 85,35»

+1

Не копируйте свои домашние вопросы здесь. Попробуйте решение, и если вы застряли на линии или двух, спросите здесь. Лучшее для вас и для нас - это сделать свою домашнюю работу. – Bohemian

ответ

1

Что вопрос просит есть возможность писать код, который выглядит

Student s = new Student(midTermScore, finalExamScore); 

Вы сделать это, написав конструкторами, что инициализирует объект, здесь s, с заданными значениями.

Сайт oracle выполняет достойную работу по разъяснению концепций. http://docs.oracle.com/javase/tutorial/java/javaOO/constructors.html

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