2015-05-20 5 views

ответ

7

Вам нужно, чтобы одна или обе переменные с правой стороны были double.

double passRate = double(passed)/double(STUDENTNO); 

В противном случае, как написано, операция будет выполнена, как int, то результат будет неявно преобразован в double до назначения обратно в passRate. К тому времени уже слишком поздно, и целые деления уже состоялись.

Или, если ваши переменные были double сразу с места в карьер, дивизия работала бы хорошо.

double passed = 1.0; 
double STUDENTNO = 3.0; 
double passRate = passed/STUDENTNO; 
Смежные вопросы