55:5=11
365:11≈33(34) берём "34", чтобы перехлестнуть 365.
Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:
34*10=340 (340+34=374) - подходит, но это не максимум!
365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.
В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).
Проверка:
34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.
ответ: d=34.
Здесь А - массив, 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;
}