В матрице 42 элемента. Заполним её случайными значениями в диапазоне от x/2 до 2*y, тогда в среднем половина значений попадет в заданный диапазон.
const m=6; n=7; var a:array[1..m,1..n] of integer; i,j,k,x,y,x1,y1,s:integer; begin Randomize; Write('Введите через пробел x и y: '); Read(x,y); if y<x then begin s:=x; x:=y; y:=s end; Writeln('Исходный массив'); if x<0 then x1:=2*x else x1:=x div 2; if y<0 then y1:=y div 2 else y1:=2*y; k:=y1-x1+1; s:=0; for i := 1 to m do begin for j := 1 to n do begin a[i,j]:=Random(k)+x1; Write(a[i,j]:4); if (a[i,j]>=x) and (a[i,j]<=y) then s:=s+a[i,j] end; Writeln end; for j:=1 to n do a[1,j]:=s; Writeln('Результирующая матрица'); for i := 1 to m do begin for j := 1 to n do Write(a[i,j]:4); Writeln end end.
В задании не сказано, откуда берутся исходные данные, поэтому будем вводить их с клавиатуры. Сначала ведем общее количество данных (не факт, что данные за месяц снимались строго ежедневно), а затем сами данные. Это позволит заодно осуществить контроль ввода.
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