profile
Размещено 5 лет назад по предмету Информатика от beregina999

Вводятся 4-ре числа: координаты клетки(номер строки и номер столбца) на которой стоит ферзь, и координаты клетки на которой стоит вражеская фигура. Программа должна выводить "Yes", если ферзь бьет вражескую фигуру и "No" в противном случае,
помогите пожалуйста

  1. Ответ на вопрос
    Ответ на вопрос дан Аккаунт удален
    Во вложении показана принятая условная схема нумерации полей.
    Предполагается, что если ферзь стоит на клетке с координатами (3,4), он может пойти по горизонтали, вертикали или диагонали. Соответствующие направления выделены цветом.
    Чтобы взять фигуру (или пешку) противника по горизонтали, у обоих фигур должны быть одинаковы координаты строки (первые в паре).
    Чтобы взять фигуру противника по вертикали, у обоих фигур должны быть одинаковы координаты столбца (вторые в паре в паре).
    Наконец, чтобы взять фигуру противника по диагонали, у обоих фигур должна быть одинакова абсолютная величина разницы как между строками, так и между колонками.
    Последнее правило взятия сложное, поэтому запишем его в условных обозначениях. Пусть Rq и Cq - соответственно номера строки и столбца, пересечение которых указывает положение клетки с ферзем. Пусть также фигура противника находится на клетке, заданной координатами Rx и Cx.
    Тогда последнее правило можно записать в виде |Rq-Rx| = |Cq-Cx|
    Теперь можно записать логическое выражение, значение которого истинно, если ферзь может взять фигуру (или пешку) противника.
    (Rq=Rx) ∨ (Cq=Cx) ∨ (|Rq-Rx| = |Cq-Cx|)

    // PascalABC.NET 3.3, сборка 1625 от 17.01.2018
    // Внимание! Если программа не работает, обновите версию!

    begin
      var (Rq,Cq):=ReadInteger2('Введите номера горизонтали и вертикали ферзя:');
      var (Rx,Cx):=ReadInteger2('Введите номера горизонтали и вертикали фигуры:');
      if (Rq=Rx) or (Cq=Cx) or (Abs(Rq-Rx)=Abs(Cq-Cx)) then Writeln('Yes')
      else Writeln('No')
    end.

    Пример
    Введите номера горизонтали и вертикали ферзя: 3 4
    Введите номера горизонтали и вертикали фигуры: 6 1
    Yes
Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 6 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.