Составьте программу которая находит 50 случайных целых чисел на промежутке от -30 до 10 и находит среднее арифметическое всех положительных чисел промежутка
Выражение rand() % 41 рандомно принимает любое возможное значение остатка при делении на 41 ( от нуля до 40-а), следовательно -30+ rand()%41 рандомно принимает значение от -30-и до 10-и. Выбираем 50 таких рандомных чисел и храним их в массиве а, заодно в переменной s очередное число, если оно положительное а в переменной count считаем количество положительных чисел. s/count будет средней арифметической всех положительных чисел промежутка.
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
double a[50], s = 0, count = 0;
srand(time(NULL));
for (int i = 0; i < 50; i++)
{
a[i] = -30 + rand() % 41;
if(a[i]>0)
{
s += a[i];
count++;
}
}
cout << s / count << endl;
system("pause");
return 0;
}
Выражение rand() % 41 рандомно принимает любое возможное значение остатка при делении на 41 ( от нуля до 40-а), следовательно -30+ rand()%41 рандомно принимает значение от -30-и до 10-и. Выбираем 50 таких рандомных чисел и храним их в массиве а, заодно в переменной s очередное число, если оно положительное а в переменной count считаем количество положительных чисел. s/count будет средней арифметической всех положительных чисел промежутка.