Предмет: Информатика, автор: Blackcherryan505

Ходы коня

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

Входные данные

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

Выходные данные

Выведите на экран изображение доски так, как это показано в примере. Обратите внимание, что символы в одной строке разделены пробелом.

Примеры
Ввод
Вывод
4 2
. . . . . . . .
* . * . . . . .
. . . * . . . .
. K . . . . . .
. . . * . . . .
* . * . . . . .
. . . . . . . .
. . . . . . . .

помогите пожалуста
на питон

Ответы

Автор ответа: merkkaa
7

Самый простой вариант

field = []

[field.append(["."] * 8) for i in range(8)]

while 1:

       coord = list(map(int, input().split()))

       if 0 < coord[0] <= 8 and 0 < coord[1] <= 8:

               coord[0] -= 1

               coord[1] -= 1

               break

field[coord[0]][coord[1]] = "K"

moves = [[1, 2], [1, -2], [-1, 2], [-1, -2],

        [2, 1], [2, -1], [-2, 1], [-2, -1]]

for i in moves:

       try:

               if coord[0] + i[0] >= 0 and coord[1] + i[1] >= 0:

                       field[coord[0] + i[0]][coord[1] + i[1]] = "*"

       except:

               pass

for i in field:

       print(*i)


Blackcherryan505: спасибо!
Похожие вопросы
Предмет: Русский язык, автор: ВашаГеймерша