В задании не сказано, откуда берутся исходные данные, поэтому будем вводить их с клавиатуры. Сначала ведем общее количество данных (не факт, что данные за месяц снимались строго ежедневно), а затем сами данные. Это позволит заодно осуществить контроль ввода.
var n,s,t,i:integer; begin Write('Укажите количество данных: '); Read(n); Writeln('Теперь вводите данные'); s:=0; for i:=1 to n do begin Read(t); s:=s+t end; Writeln('Средняя температура за месяц составила ',s/n:0:1) end.
Пример решения
Укажите количество данных: 11 Теперь вводите данные 27 29 26 31 24 23 27 30 31 28 25 Средняя температура за месяц составила 27.4
#include <iostream>
int main() {
const int SIZE = 10;
bool isSence = false;
int sum = 0;
int count = 0;
int arr[SIZE];
for (int i = 0; i < SIZE; i++)
{
arr[i] = rand() % 20 - 10; // "рандомно" заполняем массив от -10 до 10
std::cout << arr[i] << "\t"; // выводим массив в консоль
if (arr[i] >= 0)
isSence = true;
}
for (int i = 0; i < SIZE; i++)
{
if ((isSence) && (arr[i] > 0))
sum += arr[i]; //sum = sum + arr[i];
count++;
}
if (isSence)
std::cout << "\nсреднее арифметическое положительных чисел = " << double(sum) / count << std::endl; // явное приведение типов
else
std::cout << "\nВ массиве нету положительных чисел или нету нулей и/или отрицательных чисел" << std::endl;
return 0;
}
var
n,s,t,i:integer;
begin
Write('Укажите количество данных: ');
Read(n);
Writeln('Теперь вводите данные');
s:=0;
for i:=1 to n do
begin
Read(t);
s:=s+t
end;
Writeln('Средняя температура за месяц составила ',s/n:0:1)
end.
Пример решения
Укажите количество данных: 11
Теперь вводите данные
27 29 26 31 24 23 27 30 31 28 25
Средняя температура за месяц составила 27.4