Как числа a,b,c,d, с помощью размерности массива ограничить от 1 до 8???

Задание:
Поле шахматной доски определяется парой чисел (a,b), каждое от 1 до 8, первое число задается номер столбца, второе - номер строки. Заданы 2 клетки. Определить может ли шахматная ладья попасть с первой клетки на вторую за 1 ход?
Прога:
#include <iostream>
using namespace std;
int main()
{
int a, b, c, d;
cout « "Введите номер строки\n";
cin » a;
cout « "Введите номер столбца\n";
cin » b;
cout « "Введите строку другой клетки\n";
cin » c;
cout « "Введите столбец другой клетки\n";
cin » d;
if (a==c||b==d)
cout « "Yes\n";
else
cout « "No\n";
system ("PAUSE");
return 0;
}
  • Вопрос задан
  • 2795 просмотров
Решения вопроса 1
@lookid
ладья
Проверки:
1) что клетка лежит на одной вертикали или одной горизонтали O(1)
2) что путь к этой клетке никто не преграждает O(n)

Итого:
enum {OK, FAIL} States;
States state = OK;
check(state);
return state;
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
if (a==c, b==d)

молодец (:
а протестировать для a = 1, b = 1, c = 1, d = 2?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы