uses crt;
var k,l,m,n:byte;
begin
clrscr;
repeat
writeln('Положение ферзя:');
write('k=');readln(k);
write('l=');readln(l);
until (k in [1..8])and(l in [1..8]);
repeat
writeln('Поле для хода:');
write('m=');readln(m);
write('n=');readln(n);
until (m in [1..8])and(n in [1..8])and((k<>m)or(l<>n));
if(k=m)or(l=n)or(abs(k-m)=abs(l-n))
then write('Ферзь может одним ходом попасть на заданное поле')
else write('Ферзь может попасть за 2 хода с поля ',m,'-',l);
{вообще таких полей много}
readln
end.