Поле шахматной доски определяется парой натуральных чисел, первое из которых задает номер вертикали, а второе – номер горизонтали. Даны натуральные числа: k, l, m, n. Записать алгоритм определения того, угрожает ли конь, стоящий на поле (k, l), полю (m, n).как составить циклический алгоритм?
Вычислить абсолютное значение разницы между номерами вертикалей и горизонталей для полей (k, l) и (m, n).Если абсолютное значение разницы равно 1 и 2, то конь угрожает полю (m, n).Если условие выполняется, вывести сообщение о том, что конь угрожает полю (m, n).Если условие не выполняется, вывести сообщение о том, что конь не угрожает полю (m, n).
Пример циклического алгоритма на языке Python:
def check_knight_threat(k, l, m, n): diff_vertical = abs(k - m) diff_horizontal = abs(l - n) if (diff_vertical == 1 and diff_horizontal == 2) or (diff_vertical == 2 and diff_horizontal == 1): print("Конь угрожает полю ({}, {})".format(m, n)) else: print("Конь не угрожает полю ({}, {})") # Пример использования k = 2 l = 2 m = 3 n = 4 check_knight_threat(k, l, m, n)
Алгоритм определения угрозы коня:
Вычислить абсолютное значение разницы между номерами вертикалей и горизонталей для полей (k, l) и (m, n).Если абсолютное значение разницы равно 1 и 2, то конь угрожает полю (m, n).Если условие выполняется, вывести сообщение о том, что конь угрожает полю (m, n).Если условие не выполняется, вывести сообщение о том, что конь не угрожает полю (m, n).Пример циклического алгоритма на языке Python:
def check_knight_threat(k, l, m, n):diff_vertical = abs(k - m)
diff_horizontal = abs(l - n)
if (diff_vertical == 1 and diff_horizontal == 2) or (diff_vertical == 2 and diff_horizontal == 1):
print("Конь угрожает полю ({}, {})".format(m, n))
else:
print("Конь не угрожает полю ({}, {})")
# Пример использования
k = 2
l = 2
m = 3
n = 4
check_knight_threat(k, l, m, n)