координаты двух полей шахматной доски заданы в виде двух пар чисел x1 y1 и x2 y2 на первом поле стоит ферзь,на втором-конь.определить,бьет ферзь коня,конь
10-11 класс
|
ферзя,или фигуру не угрожают друг другу.
function Knight(x1, y1, x2, y2: integer): Boolean;
{ Возвращает True, если возможен переход с (x1,y1) на (x2,y2) }
begin
if abs(x2 - x1) = 2 then Knight := (abs(y2 - y1) = 1)
else
if abs(x2 - x1) = 1 then Knight := (abs(y2 - y1) = 2)
else Knight := false
end;
function Queen(x1, y1, x2, y2: integer): Boolean;
{ Возвращает True, если возможен переход с (x1,y1) на (x2,y2) }
begin
Queen := (x1 = x2) or (y1 = y2) or (abs(x2 - x1) = abs(y2 - y1))
end;
var
xk, yk, xq, yq: integer;
begin
Write('Укажите через пробел координаты коня [1..8]: ');
Readln(xk, yk);
Write('Укажите через пробел координаты ферзя [1..8]: ');
Readln(xq, yq);
if Knight(xk, yk, xq, yq) then Writeln('Конь бьет ферзя')
else
if Queen(xq, yq, xk, yk) then Writeln('Ферзь бьет коня')
else Writeln('Фигуры не угрожают друг другу')
end.
Примеры выполнения программы:
Укажите через пробел координаты коня [1..8]: 3 5
Укажите через пробел координаты ферзя [1..8]: 1 7
Ферзь бьет коня
Укажите через пробел координаты коня [1..8]: 3 5
Укажите через пробел координаты ферзя [1..8]: 7 7
Фигуры не угрожают друг другу
Укажите через пробел координаты коня [1..8]: 4 3
Укажите через пробел координаты ферзя [1..8]: 5 5
Конь бьет ферзя
Другие вопросы из категории
var a:real;
begin
readln(a);
writeln('В килобайтах' a/1024);
writeln('В мегабайтах' a/(1024*1024));
end. это правельно?если нет,тогда распишите так как у меня написано,чтоб можно было вести и не морочить себе голову.
SUM:=0; K:=M-1;
while K<M do
begin
for I:=K-M+2 to K Do SUM:=SUM+I;
K:=K+M;
end;
for I:=K-M+2 to N-1 do SUM:=SUM+I;
Читайте также
Заданы координаты концов отрезка (x1; y1) и (x2; y2) и два целых числа N1, N2.
Вычислить координаты точки (х; у), которая делит отрезок в отношении N1/N2: если L=N1/N2, то х=(х1+L*x2)/(1+L) , y=(y1+L*y2)/(1+L).
и ac по форумуле d=корень из(x2-x1)^2+(y2-y1)^2 x1=8 y1=12 x2=12.5 y2=14 x3=-3.5 y3=-5.2
квадратный из выражения (x2-x1)^2 + (y2-y1)^2
Проверить истинность высказывания: «Ладья за один ход может перейти с одного поля на другое». 2) Дано трехзначное число. Проверить истинность высказывания: «Все цифры данного числа различны». 3)Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных A и B.
истинность высказывания: «Данные поля имеют одинаковый цвет».
помагите решить