Определите, может ли ферзь попасть с первой клетки на вторую одним ходом - Turbo Pascal
Формулировка задачи:
Шахматный ферзь ходит по диагонали, горизонтали или вертикали. Даны две различные клетки шахматной доски, определите, может ли ферзь попасть с первой клетки на вторую одним ходом.
Входные данные
Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки.
Выходные данные
Программа должна вывести YES, если из первой клетки ходом ферзя можно попасть во вторую или NO в противном случае.
Примеры
входные данные
1
1
2
2
выходные данные
YES
входные данные
1
1
2
3
выходные данные
NO
Решение задачи: «Определите, может ли ферзь попасть с первой клетки на вторую одним ходом»
textual
Листинг программы
const NoYes: array [Boolean] of String[3] = ('NO','YES'); var a, b, c, d: Integer; begin Read(a,b,c,d); WriteLn(NoYes[(a-c=0) or (b-d=0) or (abs(a-c)=abs(b-d))]); end.
Объяснение кода листинга программы
В данном коде используется массив NoYes
, который содержит две строки: NO
и YES
. Также в коде объявлены четыре переменные: a
, b
, c
и d
типа Integer
.
С помощью функции Read
происходит чтение значений переменных a
, b
, c
и d
из некоторого источника данных.
Затем с помощью оператора WriteLn
выводится значение массива NoYes
по заданному условию. Условие проверяет, может ли ферзь попасть с первой клетки на вторую одним ходом. Если это условие выполняется, то выводится строка YES
, в противном случае выводится строка NO
.
Таким образом, данный код определяет, может ли ферзь попасть с первой клетки на вторую одним ходом.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д