В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
BarsicX
BarsicX
03.04.2020 03:42 •  Информатика

Меньше среднего.с++.8 класс Дан массив A из N элементов. Требуется найти и вывести количество элементов,
значение которых меньше среднего арифметического значения элементов массива.
Input
Со стандартного устройства ввода в первой строке вводится целое число
N (1 <= N <=1000) — количество элементов массива. Во второй строке через пробел
вводятся N целых чисел - элементы массива A (-1000 <= A i <= 1000).
Output
Требуется вывести целое число - количество искомых элементов. Выводить в конце
строки пробел не нужно.
Sample Input
5
2 4 6 10 8
Sample Output
2
Примечание
Среднеe арифметическое значение элементов массива =
(Сумма значений всех элементов массива) / (Количество элементов в массиве).
В примере среднеe арифметическое значение = (2 + 4 + 6 + 10 + 8) / 5 = 6.

Показать ответ
Ответ:
greentyler451
greentyler451
27.08.2021 15:05

Здесь А - массив, N - количество чисел в массиве, sum - сумма элементов массива, count - количество искомых элементов, sum * 1.0 / N - это и есть среднее арифметическое, причем если здесь не умножать на 1.0, то результат будет округлен и программа будет уже работать неправильно, а если умножать, то все хорошо, потому что sum * 1.0 / N становится вещественным числом

Объяснение:

Здесь можно использовать динамику(чтобы не занимать место в памяти статическим массивом):

#include <iostream>

using namespace std;

int main()

{

int N, sum=0, count=0;

cin >> N;

int* A = new int[N];

for (int i = 0; i < N; i++) {

 cin >> A[i];

 sum += A[i];

}

for (int i = 0; i < N; i++) if (A[i] < (sum * 1.0 / N)) count++;

cout << count;

       delete[] A;

}

Но если динамика еще не изучена, то:

#include <iostream>

using namespace std;

int main()

{

int N, sum=0, count=0, A[1000];

cin >> N;

for (int i = 0; i < N; i++) {

 cin >> A[i];

 sum += A[i];

}

for (int i = 0; i < N; i++) if (A[i] < (sum * 1.0 / N)) count++;

cout << count;

}

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота