Доброго вечера!
С первой задачей не понял что именно ты хочешь. А для второй набросал кодик:
Код
Program Heron;
var
a,b:integer;
min,max:real;
l:boolean;
begin
writeln('Сколько ног цапель увидел Петя? ');
readln(a);
writeln('Сколько ног цапель увидела Маша? ');
readln(b);
if a=b then
begin
l:=odd(a);
if l=true then
begin
min:=a/2;
max:=a
end
else
max:=a;
min:=(a-1)/2+1;
end
else
if a>b then
begin
l:=odd(b);
max:=a;
if l=false then
min:=b/2
else
min:=(b-1)/2+1;
end
else
begin
l:=odd(a);
max:=b;
if l=false then
min:=a/2
else
min:=(a-1)/2+1;
end;
writeln('Максимально возможно число цапель ',max);
writeln('Минимально возможное число цапель ',min);
end.
var
a,b:integer;
min,max:real;
l:boolean;
begin
writeln('Сколько ног цапель увидел Петя? ');
readln(a);
writeln('Сколько ног цапель увидела Маша? ');
readln(b);
if a=b then
begin
l:=odd(a);
if l=true then
begin
min:=a/2;
max:=a
end
else
max:=a;
min:=(a-1)/2+1;
end
else
if a>b then
begin
l:=odd(b);
max:=a;
if l=false then
min:=b/2
else
min:=(b-1)/2+1;
end
else
begin
l:=odd(a);
max:=b;
if l=false then
min:=a/2
else
min:=(a-1)/2+1;
end;
writeln('Максимально возможно число цапель ',max);
writeln('Минимально возможное число цапель ',min);
end.
Успехов в учебе!

Спасибо большое. Надо было, наверное, удалить тему. Это была региональная олимпиада по информатике. Друг попросил, хотя я уверял его не идти, т.к. сам я больше него понимаю, но идти или помогать было лень. Таки он не прошел.
P.S. Можно тут как-то рейтинг повысить или на "Спасибо" нажать?)