Задание по программированию

Задание по программированию
Срочно нужно решить вот такую задачку. Реализация желательно в Qbasic или на крайний случай Pascal. Заранее спасибо. А вот и задачка. Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит восьми: первое число - номер вертикали (снизу вверх), второе - номер горизонтали (слева направо). С помощью датчика случайных чисел получить натуральные числа a, b, c, d, e, f, каждое из которых не превосходит восьми, такие, что на поле (a, b) расположена белый ферзь, на поле (c, d) - черный конь. Определить, может ли белая ладья пойти на поле (e, f), не попав при этом под удар черного коня.
На языке Си (C) , пожалуйста

  • По шагам считаете движение ладьи. Если одна из ячеек попадает под удар коня - то не может.
  • > на поле (a, b) расположена белый ферзь
    может ли белая ладья пойти на поле

    Откуда взялась белая ладья?

    Белая фигура со своей первоначальной позиции должна попасть на поле (e, f) за один, два, или несколько ходов?

    Ведь за один ход вообще можно не попасть на нужное поле. А тут генератор случайных чисел нужно использовать, так что шанс этого очень велик.

    Если за несколько, то она может пройти так, чтобы попасть на нужное поле и не быть битой в любом случае, кроме одного: если само поле (e, f) бьется конем.

    За два хода -- либо бьется в промежуточной позиции, либо в конечной.

    Уточните эти моменты у преподавателя, попробуйте решить сами, а потом, если что-то не получается задавайте вопрос и приводите свою попытку решения.