Среднее арифметическое — это такое значение, которое часто используют в статистике. Средняя температура по больнице считается именно по формуле среднего арифметического. Мы подошли к ответственному моменту: напишем программу, в которой вводим с клавиатуры числа, суммируем их и считаем среднее, пока пользователь не введет число -1.
Среднее арифметическое
- 8
Недоступна
Комментарии (338)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Mihail Java Developer
15 апреля, 16:14
При значении -1 мы выходим из цикла и потому значение -1 не считаем
крутим цикл пока не попадется значение -1 , как попалось выходим из цикла break;
образец :
while (true) {
int number = считываем число;
if (проверяем, что number -1)
break;
}
чуть чуть переделаем:
if (a != -1)
считываем число
счетчик
складываем
делим
else
break;
Не забываем про Деление целых и вещественных чисел в Java:
double d = 5.0 / 2;
double d = 5 / 2.0;
double d = 5.0 / 2.0;
Читать тут - > https://javarush.ru/quests/lectures/questsyntaxpro.level04.lecture06
+2
Абдурахман
23 февраля, 16:33
и эта задача hard уровня?
0
Александр
24 октября 2021, 06:47
Смотрю на правильное решение. Там изначально делителю count присваивается значение 0, но если первым введенным числом будет -1, то в результате у нас будет деление на 0 (0/0), вопрос - правильно ои это?
+3
Абдурахман
23 февраля, 16:36
Я как раз учел этот исход и решил по другому
0
Михаил Кладовщик 80lvl
14 сентября 2021, 08:17
Извращенцы одобрят
0
Mikhail Efimov
29 августа 2021, 17:39
Ммм, специально не хотел использовать подсказку и решал по другому, получилось через do-while сделать, прям эйфория от решения)))
+1
DanYun
29 августа 2021, 08:57
Всем привет. Может кто мне объяснить в чём проблема? В результате я получаю 36.0 (что и есть правильный ответ), но он выдаёт сразу 3 ошибки, 2 из которых про то, что число должно быть вещественным... ХЗ почему моё решение ему не нравится.
А 3-я ошибка это "Выведенный результат должен соответствовать заданию для любых входных данных."
Тоже не совсем понимаю что он имеет в виду.
0
Михаил Кладовщик 80lvl
14 сентября 2021, 08:13
в 11 строке ты сначала производишь целочисленное деление, и только потом приведение к вещественному типу.
То есть, если допустим делим 9 на 2 то будет 9 / 2 -> 4 -> 4.0
Надо каст делать перед делением, добавив к любому из чисел (т.к. приоритет у него больше, чем у деления)
+1
Дима
17 июня 2021, 12:28
Народ, тут мне недавно рассказали про "debug" очень советую. Можно разобрать свой код по полочкам))) Жаль раньше не знал о нём) Вот статья на джавараше как это работает https://javarush.ru/quests/lectures/questsyntaxpro.level20.lecture04
+3
Дима
17 июня 2021, 13:56
Кстати вот ссылка если кто-то делил int на int и хотел результат записать в double, но не получилось, вот тут всё написано про деление и т.п. https://javarush.ru/quests/lectures/questsyntaxpro.level04.lecture06
+4
Egor Kurilko
7 января, 11:44
Спасибо мил человек! Именно ваши подсказки помогли понять где у меня ошибка была.
0
Marsian
9 июня 2021, 15:44
Не стоит эта задача лейбла "Hard", она на "Medium" еле тянет.
+1
Вадим
28 октября 2021, 14:33
Здесь если приводить итеративные вычисления среднего,то будет сложно.
0
Сергей
12 мая 2021, 17:43
тут у многих главное проблемка получается в том что в циклах порядок не верный ставят сначала суммируется количество цифр а потом считается а надо на оборот пробуйте если к примеру циклом for делать примерно так
if(a == -1){
считает среднее
выводит
break;
} else {
считает сумму
}
итого если поставить а!=-1 и поменять к примеру местами 1 выражение со вторым то в итоге считать будет вместе с -1! немножко сумбурно получилось.
решение не выкладываю только подсказку
+1
Zuri Bagomaeva
3 мая 2021, 17:42
обратите внимание на -1 не должно учитываться
+1