Задание не совсем корректное. Если в массиве хранятся числа и отсутствие осадков принято за "0", то программа выглядит так
var i: integer;
a: array[1..31] of integer;
begin
for i:=1 to 31 do read(a[i]);
for i:=1 to 31 do
if a[i]=0 then write(i, ' ');<span>
end.
</span>
А) var a,b,c:real;
begin
readln(a);
readln(b);
readln(c);
if (a>b) and (a>c) then writeln('Победил 1! Результат: ',a);
if (b>a) and (b>c) then writeln('Победил 2! Результат: ',b);
if (c>b) and (c>b) then writeln('Победил 3! Результат: ',c);
end.