2016-05-08 3 views
-6

Как рассчитать тяжелые числа в Java?Расчет тяжелых чисел в Java

Heavy Decimal Count: неотрицательное целое число называется тяжелым, если среднее значение его цифр в десятичном представлении превышает 7. Например, число равно 9688, оно имеет четыре цифры: девять, шесть, восемь, восемь (9,6,8,8). Среднее значение его цифр равно (9 + 6 + 8 + 8)/4 = 7,75. Поскольку среднее значение 7,75 больше 7, мы можем сказать, что 9688 - это тяжелое число. Теперь возьмем другой пример, предположим, что данный номер равен 41153. Он имеет пять цифр, то есть 4,1,1,5,3. Среднее значение его цифр равно (4 + 1 + 1 + 5 + 3)/5 = 2,8. Поскольку среднее значение 2.8 меньше 7, мы можем сказать, что 41153 не является тяжелым числом. Теперь от вас требуется написать функцию: heavyDeciCount (x, y)

Результат должен быть таким, пожалуйста, помогите по этой теме.

Sample Output 

Enter 1st integer: 9872 
Enter 2nd integer: 9884 
Number Average Is Heavy 
9872  6.50  No 
9873  6.75  No 
9874  7.00  No 
9875  7.25  Yes 
9876  7.50  Yes 
9877  7.75  Yes 
9878  8.00  Yes 
9879  8.25  Yes 
9880  6.25  No 
9881  6.50  No 
9882  6.75  No 
9883  7.00  No 
9884  7.25  Yes 
Total Heavy Count: 6 
+2

«требуется от вас, чтобы написать функцию» .. это действительно похоже, что вы только что скопировали и наклеили свою домашнюю работу здесь. пожалуйста, покажите нам свои усилия и уточните свой вопрос по конкретной проблеме. http://stackoverflow.com/help/mcve – trooper

+0

Здесь нет ничего сложного. Это даже не выглядит так, как будто они заботятся о возможных прецизионных ограничениях с плавающей запятой. Задача совершенно проста. Ничто здесь не выделяется как «трудная часть», поэтому сложно сказать, с чем вам нужна помощь. – user2357112

+0

Мне нужно его решение на Java –

ответ

0

Функция для расчета ли не число тяжела может выглядеть примерно так:
public boolean isHeavy(int number) {

String asString = "" + number; 

int sumOfDigits = 0; 
for(int i = 0; i <asString.length(); i++) { 
    sumOfDigits += Integer.parseInt(asString.charAt(i) + ""); 
} 

return (sumOfDigits/(double)asString.length()) > 7d; 

}

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