2015-10-16 4 views
0

Вопроса заявление:Как мне изменить исключение IllegalArgumentException, чтобы включить отрицательные значения?

Написать метод, называемый getGrade, который принимает целое число, представляющее Оценку студента в курсе и возвращает числовую оценку курса, студента. Оценка может быть между 0.0 (неудачей) и 4.0 (отлично). Предположим, что оценки находятся в диапазоне от 0 до 100, и что сортов основаны на следующей шкале: и сделать способ бросить IllegalArgumentException, если пользователь проходит сорт ниже 0 или выше, чем 100.

Он работает на все, кроме отрицательных значений ... , так что если пользователь вводит -1, он дает мне 0.0, а не ошибку.

Вот мой код:

public double getGrade(int score) { 
    double grade = 0; 
    if(score<60) { 
    grade = 0.0; 
    return grade; 
    } else if (score>=60 && score<=62) { 
     grade = 0.7; 
     return grade; 
    } else if (score>=63 && score<95) { 
     grade = (0.7+(0.1*(score-62))); 
     return grade; 
    } else if (score>=95 && score<100) { 
     grade = 4.0; 
     return grade; 
    } else { 
     throw new IllegalArgumentException(); 
    } 
} 

+2

отрицательный 1 составляет <60, поэтому он присваивает 0 градусам и возвращает по строке 5. – Siddhartha

+3

Изменить если (оценка <60) до if (оценка <60 && оценка> 0) { – Siddhartha

+0

Большое спасибо Сиддхартхе! –

ответ

0

Пожалуйста, попробуйте изменить if(score<60) { к if(score>=0 && score<60) {.

+1

Благодарим вас за исправление моей ошибки. – TeSa

+0

Большое спасибо TeSa! –