program qq;uses crt;var M:array[1..31] of real; sr, all, a, b, ia, ib: real; i, n: integer; //значения кол-ва осадков нецелые, т.к. целые встречаются редко. однако можно заменить и на integer. среднее значение (sr) всегда real, т.к. есть операция деленияbeginwriteln ('Введите количество дней:'); //возможность расчета запрашиваемых данных как за полный месяц (31 день - верхняя граница массива), так и за какую-то его часть - n дней.readln (n);all:=0; //обнуляем переменные.ia:=0;ib:=0;for i:=1 to n do read (m[i]); //задаем массив. если массив задается другим способом - стоило бы указать в задании.for i:=1 to n do all:=all+m[i]; //подсчёт общего кол-ва осадковsr:=all/n; //среднее арифметическое осадковwriteln('Введите числа а и b');read (a, b);for i:=1 to n do begin if m[i]=b then if ib=0 then ib:=i; //Сравниваем оба числа поочередно if m[i]=a then //с каждым элементом массива, если if ia=0 then ia:=i; //совпадают, то запоминаем индекс. вложенное условие позволяет считать индекс только первого встретившегося числа. end;writeln ('Среднесуточное кол-во осадков:', sr:6:2);writeln ('Общее кол-во осадков', all:8:2);if ib<>0 then writeln ('est` chislo b');//если индекс не 0, значит мы нашли b в массивеif ia<>0 then writeln ('est` chislo a');if (ib<>0) and (ia<>0) then //имеет смысл сравнивать позиции чисел, только если оба числа присутствуют в массиве if ia<ib then //число с меньшим индексом, очевидно, встречается первым writeln ('pervim vstr a') else writeln ('pervim vstr b');end.