В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
ilona10022002
ilona10022002
14.04.2021 03:42 •  Информатика

Напишите программу, которая на вход получает координаты двух клеток шахматной доски и выводит соощение о том, являются ли эти клетки одного цвета. Формат ввода:
c2
e4

ВНИМАТЕЛЬНО! Формат ввода это буква и число. А не число и число.

Показать ответ
Ответ:
Myzhik123456
Myzhik123456
05.07.2021 20:46

a=input().lower()

b=input().lower()

mas=["a","b","c","d","e","f","g","h"]

a=[mas.index(a[0]) + 1] + [int(a[1])]

b=[mas.index(b[0]) + 1] + [int(b[1])]

a_bool=(a[0] + a[1]%2)%2

b_bool=(b[0] + b[1]%2)%2

if a_bool == b_bool:

   print("Клетки одного цвета")

Объяснение:

вводятся два значения

список просто является словариком для букв, чтоб можно было выдать им численное значение

в первую ячейку списка вносится численное значение буквы(горизонтали), а во вторую просто численное значение по вертикали

далее идет проверка на цвет:

глядя на шахматную доску, можно увидеть некую закономерность

в строке 1(нечетная) к каждой нечетной букве соответствует черная ячейка, а в строке 2(четная) наоборот. Это говорит о том, что по вертикали идет сдвиг то вправо, то влево. Суть проверки заключается в том, что мы добавляем численное значение по горизонтали и добавляем к нему остаток от деления на два значения по вертикали, сумму так же проверяем на четность, если сумма нечетная - 1(черная), иначе - 0 (белая)

Потом просто идет сравнение

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота