Программа: a = input("Введите текущую координату фигуры(вертикаль): ") b = input("Введите текущую координату фигуры(горизонталь): ") c = input("Введите координату для хода(вертикаль): ") d = input("Введите координату для хода(горизонталь): ") # Условие if (a==c) and (b==c): #Конец условия print("Фигура может сделать ход") else: print("Фигура НЕ может сделать ход") Условия: а) if (a==c) and (b==c): #ладья б) if abs(a-c) == abs(b-d): #слон в) if abs(a-c)==1 or abs(b-d)==1: #король г) if abs(a-c) == abs(b-d) or a == c or b == d: #ферзь ж) if((abs(abs(a-c)-2)<0.5) and (abs(abs(b-d)-1)<0.5) or (abs(abs(a-c)-1)<0.5) and (abs(abs(b-d)-2.0)<0.5)): #конь
1 1 1 1 0 0 1 1 463/2=231/2=115/2=57/2=28/2=14/2=7/2=3/2=1 Важно разделить число так чтобы оно было без остатка если допустим число 463 не делится на 2 значит надо занять 1 тогда будет число 462 его разделим на 2 и т.д. а эту единицу необходимо записать над знаком деления если число делится пишим 0 над знаком деления и записываем получившееся число с права налево получается число 11001111 также и в восьмеричной системе счисления пишим остаток над знаком деления 7 1 463/8=57/8=7 ответ 717 Аналогично в 16 ричной СС 15 12 463/16=28/16=1 так как 15 у нас равно Е а 12 С ответ будет 1СЕ B) 1 0 0 1 1 1 0 1 0 0 1209/2=604/2=302/2=151/2=75/2=37/2=18/2=9/2=4/2=2/2=1 ответ с права налево 10010111001 1 7 2 1209/8=151/8=18/8=2 ответ 2271 9 В 1209/16=75/16=4 ответ 4В9 С) 0 1 0 1 0 1 1 0 362/2=181/2=90/2=45/2=22/2=11/2=5/2=2/2=1 ответ 101101010 2 5 362/8=45/8=5 ответ 552 А 6 362/16=22/16=1 ответ 16А D) 1 0 1 0 1 0 1 0 1 1 1 3925/2=1962/2=981/2=490/2=245/2=122/2=61/2=30/2=15/2=7/2=3/2=1 ответ 111101010101 5 2 5 3925/8=490/8=61/8=7 ответ 7525 5 5 3925/16=245/16=15 иил F ответ F55 Е) 1 1 0 1 1 0 1 0 0 0 11355/2=5677/2=2838/2=1419/2=709/2=354/2=177/2=88/2=44/2=22/2= 1 1 0 11/2=5/2=2/2=1 ответ 10110001011011 3 3 1 6 11355/8=1419/8=177/8=22/8=2 ответ 26133 В 5 С 11355/16=709/16=44/16=2 ответ 2С5В
a = input("Введите текущую координату фигуры(вертикаль): ")
b = input("Введите текущую координату фигуры(горизонталь): ")
c = input("Введите координату для хода(вертикаль): ")
d = input("Введите координату для хода(горизонталь): ")
# Условие
if (a==c) and (b==c):
#Конец условия
print("Фигура может сделать ход")
else:
print("Фигура НЕ может сделать ход")
Условия:
а) if (a==c) and (b==c): #ладья
б) if abs(a-c) == abs(b-d): #слон
в) if abs(a-c)==1 or abs(b-d)==1: #король
г) if abs(a-c) == abs(b-d) or a == c or b == d: #ферзь
ж) if((abs(abs(a-c)-2)<0.5) and (abs(abs(b-d)-1)<0.5)
or (abs(abs(a-c)-1)<0.5) and (abs(abs(b-d)-2.0)<0.5)): #конь
463/2=231/2=115/2=57/2=28/2=14/2=7/2=3/2=1 Важно разделить число так чтобы оно было без остатка если допустим число 463 не делится на 2 значит надо занять 1 тогда будет число 462 его разделим на 2 и т.д. а эту единицу необходимо записать над знаком деления если число делится пишим 0 над знаком деления и записываем получившееся число с права налево получается число 11001111
также и в восьмеричной системе счисления пишим остаток над знаком деления
7 1
463/8=57/8=7 ответ 717
Аналогично в 16 ричной СС
15 12
463/16=28/16=1 так как 15 у нас равно Е а 12 С ответ будет 1СЕ
B) 1 0 0 1 1 1 0 1 0 0
1209/2=604/2=302/2=151/2=75/2=37/2=18/2=9/2=4/2=2/2=1 ответ с права налево 10010111001
1 7 2
1209/8=151/8=18/8=2 ответ 2271
9 В
1209/16=75/16=4 ответ 4В9
С) 0 1 0 1 0 1 1 0
362/2=181/2=90/2=45/2=22/2=11/2=5/2=2/2=1 ответ 101101010
2 5
362/8=45/8=5 ответ 552
А 6
362/16=22/16=1 ответ 16А
D) 1 0 1 0 1 0 1 0 1 1 1
3925/2=1962/2=981/2=490/2=245/2=122/2=61/2=30/2=15/2=7/2=3/2=1 ответ 111101010101
5 2 5
3925/8=490/8=61/8=7 ответ 7525
5 5
3925/16=245/16=15 иил F ответ F55
Е) 1 1 0 1 1 0 1 0 0 0
11355/2=5677/2=2838/2=1419/2=709/2=354/2=177/2=88/2=44/2=22/2=
1 1 0
11/2=5/2=2/2=1 ответ 10110001011011
3 3 1 6
11355/8=1419/8=177/8=22/8=2 ответ 26133
В 5 С
11355/16=709/16=44/16=2 ответ 2С5В