Вопрос задан 09.07.2026 в 18:36. Предмет Информатика. Спрашивает Василенко Анна.

Ходы ферзя
На шахматной доске стоит ферзь. Отметьте положение ферзя на доске и все клетки, которые он бьёт. Клетку, где стоит ферзь, отметьте буквой “Q”, клетки, которые бьёт ферзь, отметьте символами “*”, остальные клетки заполните точками.

Входные данные
Программа получает на вход два числа — координаты ферзя на шахматной доске. Каждая координата вводится на отдельной строке. Первое число обозначает номер строки, а второе — номер столбца. Все числа принимают значения от 1 до 8.

Выходные данные
Выведите на экран изображение доски.

Примеры
Ввод
2
5
Вывод
. . . * * * . .
* * * * Q * * *
. . . * * * . .
. . * . * . * .
. * . . * . . *
* . . . * . . .
. . . . * . . .
. . . . * . . .

Решите задачу на C++ или Python.

Перейти к ответам

Ответы на вопрос

Отвечает Старикова Ксюша.

Для решения задачи нужно вывести шахматную доску 8×8. Ферзь стоит на клетке с координатами (строка, столбец). Он бьёт все клетки, находящиеся на той же строке, том же столбце и на обеих диагоналях.

Алгоритм:

  • Запросить два числа: r (строка) и c (столбец) от 1 до 8.
  • Для каждой клетки (i, j) от 1 до 8 проверить условие: если i == r и j == c — вывести "Q"; иначе если i == r или j == c или |i - r| == |j - c| — вывести "*"; иначе вывести ".". Клетки разделять пробелом, после каждой строки — перевод строки.

Такой подход гарантирует правильную отметку всех атакованных полей.

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос