Статистика
Всего в нашей базе более 4 327 664 вопросов и 6 445 979 ответов!

координаты двух полей шахматной доски заданы в виде двух пар чисел x1 y1 и x2 y2 на первом поле стоит ферзь,на втором-конь.определить,бьет ферзь коня,конь

10-11 класс

ферзя,или фигуру не угрожают друг другу.

ДАША232242 03 февр. 2016 г., 0:55:06 (8 лет назад)
Рейтинг
+ 0 -
0 Жалоба
+ 0 -
Apetruhina
03 февр. 2016 г., 3:42:25 (8 лет назад)

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. это правельно?если нет,тогда распишите так как у меня написано,чтоб можно было вести и не морочить себе голову.

Читайте также

Cоставить программу в Паскале:

Заданы координаты концов отрезка (x1; y1) и (x2; y2) и два целых числа N1, N2.
Вычислить координаты точки (х; у), которая делит отрезок в отношении N1/N2: если L=N1/N2, то х=(х1+L*x2)/(1+L) , y=(y1+L*y2)/(1+L).

Помогите надо написать программу в паскале. 1)координаты двух различных полей шахматной доски x1, y1,x2, y2 (целые числа, лежащие в диапазоне 1–8).

Проверить истинность высказывания: «Ладья за один ход может перейти с одного поля на другое». 2) Дано трехзначное число. Проверить истинность высказывания: «Все цифры данного числа различны». 3)Даны две переменные целого типа: A и B. Если их значения не равны, то присвоить каждой переменной сумму этих значений, а если равны, то присвоить переменным нулевые значения. Вывести новые значения переменных A и B.

задания по паскалю Даны координаты двух различных полей шахматной доски х1, y1, x2, y2 (целые числа, лежащие в диапазоне 1-8). Проверить

истинность высказывания: «Данные поля имеют одинаковый цвет».

помагите решить



Вы находитесь на странице вопроса "координаты двух полей шахматной доски заданы в виде двух пар чисел x1 y1 и x2 y2 на первом поле стоит ферзь,на втором-конь.определить,бьет ферзь коня,конь", категории "информатика". Данный вопрос относится к разделу "10-11" классов. Здесь вы сможете получить ответ, а также обсудить вопрос с посетителями сайта. Автоматический умный поиск поможет найти похожие вопросы в категории "информатика". Если ваш вопрос отличается или ответы не подходят, вы можете задать новый вопрос, воспользовавшись кнопкой в верхней части сайта.