Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.09.2008, 19:46   #1
xinch
 
Регистрация: 10.03.2008
Сообщений: 9
По умолчанию задачка на записи

В общем, задали задачку на записи:"Заданы 2 поля шахматной доски.Определить, может ли ферзь за 1 ход перейти с 1-го поля на 2-е."
Поясняю: под полем имеется в виду 1 клекта шахматной доски, задаётся координатами вида е2 или b3 и цветом.
Проблема состоит в написании условия(может или нет перейти с 1-го поля на 2-е) к программе.

возможные ходы ферзя
xinch вне форума Ответить с цитированием
Старый 30.09.2008, 22:37   #2
pascal65536
Пользователь
 
Регистрация: 03.09.2007
Сообщений: 42
По умолчанию

Надо сравнивать не координаты клеток а модуль разности между соответствующими координатами.
Если эти модули будут равны или какой-либо из них будет равен нулю, то такой ход будет возможен.
pascal65536 вне форума Ответить с цитированием
Старый 30.09.2008, 23:15   #3
xinch
 
Регистрация: 10.03.2008
Сообщений: 9
По умолчанию

т.е. if ((abs(ord(x1)-ord(x2)=0) or (abs(y1-y2)=0))) ?
xinch вне форума Ответить с цитированием
Старый 01.10.2008, 07:42   #4
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

if (abs(ord(x1)-ord(x2))=abs(y1-y2)) or (abs(ord(x1)-ord(x2)=0) or (abs(y1-y2)=0)
1. На одной диагонали
2. На одной вертикали
3. На одной горизонтали

Последний раз редактировалось puporev; 01.10.2008 в 07:44.
puporev вне форума Ответить с цитированием
Старый 01.10.2008, 23:17   #5
xinch
 
Регистрация: 10.03.2008
Сообщений: 9
По умолчанию

спасибо за помощь
xinch вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачка SunKnight Паскаль, Turbo Pascal, PascalABC.NET 3 03.09.2008 20:44
Задачка kupulau Общие вопросы C/C++ 7 27.01.2008 18:32
Записи Xeon332 Помощь студентам 5 12.01.2008 23:17