Форум сайта python.su
Коллеги, помогите, пожалуйста, к кодом.
Задача простая: Имеется шахматная доска. На входе программы задаём номер строки и столбца первой шахматной клетки и номер строки и столбца второй шахматной клетки. Если их цвета совпадают - пишем YES, если не совпадают - пишем NO.
Конечно, я нашел более изящное решение этой задачи в пару строк)), но и это мой громоздкий код на первый взгляд правильный…в упор не вижу ошибки. А программа при любых сочетаниях почему-то показывает YES.
stolb1 = int(input ())
strok1 = int(input ())
stolb2 = int(input ())
strok2 = int(input ())
if strok1 == 1 or 3 or 5 or 7:
if stolb1 == 1 or 3 or 5 or 7:
x = 1
else:
x = 0
else:
if stolb1 == 2 or 4 or 6 or 8:
x = 1
else:
x = 0
if strok2 == 1 or 3 or 5 or 7:
if stolb2 == 1 or 3 or 5 or 7:
y = 1
else:
y = 0
else:
if stolb2 == 2 or 4 or 6 or 8:
y = 1
else:
y = 0
if x == y:
print('YES')
else:
print('NO')
Офлайн
Вот в это файле код написан понятнее
Прикреплённый файлы: Документ Microsoft Word (2).docx (14,7 KБ)
Офлайн
if strok1 == 1 or 3 or 5 or 7:
if (strok1 == 1) or (bool(3) == True) or (bool(5)) or 7:
Офлайн
zantal для того чтоб код читался после ввода кода в поле редактора выделяем весь код и жмакаем на стрелочку слева от смайла а там Python.
по поводу решения. представьте что первая строка состоит из нулей и едениц и начинается с 0
значить следущая строка начнется с 1. то есть каждая нечетная строка начнется с 1. так же получается и с
столбцами. отсюда если клетки расположены на четных строках и четных столбцах (или парно на нечетных ) и если клетки на строках разной четности и столбцах разной четности то они одного цвета иначе разного
Офлайн
Спасибо большое за ответы!
Офлайн