Щахматный Алгоритм
Понятно, что тут надо использовать выборки и сравнения. Но хотелось бы по короче.
Цитата:
Originally posted by avatara
Есть шахматная доска (8 на 8) с координатами. На ней находятся ферзь и король. Пользователь вводит координаты ферзя и короля. Как проверить шах королю или нет. А если вместо ферзя будет конь?
Понятно, что тут надо использовать выборки и сравнения. Но хотелось бы по короче.
Есть шахматная доска (8 на 8) с координатами. На ней находятся ферзь и король. Пользователь вводит координаты ферзя и короля. Как проверить шах королю или нет. А если вместо ферзя будет конь?
Понятно, что тут надо использовать выборки и сравнения. Но хотелось бы по короче.
Попробуй так. Пусть x - модуль разницы координат фигуры и короля по горизонтали, y - по вертикали.
Для ферзя:
if (x*y==0 || x==y)
Для коня:
if (x*y==2 && (x+y)==3)
Кажется, должно работать. Как это сделать оптимальнее - не знаю.
Спасибо!!! Все работает как надо. И по-моему жто самый оптимальный метод.