Подборка задач с решениями - 9
- Категория: Python
- Дата публикации: 2021-12-28
- Опубликовано на сайте: Stepik
Задача 1:
Заданы две клетки шахматной доски. Напишите программу, которая определяет имеют ли указанные клетки один цвет или нет. Если они покрашены в один цвет, то выведите слово «YES», а если в разные цвета — то «NO».
Формат входных данных На вход программе подаётся четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки.
Решение 1:
x1, x2, y1, y2 = [int(input()) for _ in range(4)] print('YES' if (x1 + y1 + x2 + y2) % 2 == 0 else 'NO')
Решение 2:
print("YES" if not sum(int(input()) for i in "1234") % 2 else "NO")
Задача 2 - "Ход слона":
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли слон попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом слона можно попасть во вторую или «NO» в противном случае.
Формат входных данных На вход программе подаётся четыре числа от 1 до 8.
Формат выходных данных Программа должна вывести текст в соответствии с условием задачи.
Примечание. Шахматный слон ходит по диагоналям.
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
x1, x2, y1, y2 = [int(input()) for _ in range(4)] if (x2 - x1) ** 2 == (y2 - y1) ** 2: print('YES') else: print('NO')
Задача 3 - "Ход коня":
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли конь попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом коня можно попасть во вторую или «NO» в противном случае.
Формат входных данных На вход программе подаётся четыре числа от 1 до 8.
Формат выходных данных Программа должна вывести текст в соответствии с условием задачи.
Примечание. Шахматный конь ходит буквой «Г».
Решение:
Все решения теперь можно найти в сообществе Как войти в IT
x1, x2, y1, y2 = [int(input()) for _ in range(4)] if (abs(x2 - x1) == 1 and abs(y2 - y1) == 2) or (abs(x2 - x1) == 2 and abs(y2 - y1) == 1): print('YES') else: print('NO')
Задача 4 - "Ход ферзя":
Даны две различные клетки шахматной доски. Напишите программу, которая определяет, может ли ферзь попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести «YES», если из первой клетки ходом ферзя можно попасть во вторую или «NO» в противном случае.
Формат входных данных На вход программе подаётся четыре числа от 1 до 8.
Формат выходных данных Программа должна вывести текст в соответствии с условием задачи.
Примечание. Шахматный ферзь ходит по диагонали, горизонтали или вертикали.
Решение 1:
x1, x2, y1, y2 = [int(input()) for _ in range(4)] if (x1 == x2 and y1 != y2) or (x1 != x2 and y1 == y2) or (abs(x1 - x2) == abs(y1 - y2)): print('YES') else: print('NO')
Решение 2:
x1, x2, y1, y2 = [int(input()) for _ in range(4)] if abs(x1 - x2) == abs(y1 - y2) or x1 == x2 or y1 == y2: print('YES') else: print('NO')