Программа: 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)): #конь
Так как может возникнуть ситуация, что ровно треть мальчиков от всех учеников сделать не получиться, то используем приём со сравнением числа с дробной частью и без дробной части в числе. Если дробная часть есть, то прибавляем еще одного принятого, чтобы было чуть больше трети от всех.
Пример:
n=59
k=10
pd=14,5
pc=trunc(14,5)=14
{функция trunc полностью отбрасывает дробную часть (не округляет!)}
pd>pc?
Да!
Значит
pc=14+1=15
Считаем.
Если бы мы не добавили к pc единицу, то получилось бы:
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)): #конь
program balet;
uses
crt;
var
k, n, pc: integer;
var
pd: real;
begin
readln(n);
readln(k);
pd := (n - 3 * k) / 2;
pc := trunc(pd);
if (pd > pc) then
pc := pc + 1 ;
writeln(pc);
readln;
end.
Пояснения:
pc - целое число принятых
pd - дробное число принятых
Так как может возникнуть ситуация, что ровно треть мальчиков от всех учеников сделать не получиться, то используем приём со сравнением числа с дробной частью и без дробной части в числе. Если дробная часть есть, то прибавляем еще одного принятого, чтобы было чуть больше трети от всех.
Пример:
n=59
k=10
pd=14,5
pc=trunc(14,5)=14
{функция trunc полностью отбрасывает дробную часть (не округляет!)}
pd>pc?
Да!
Значит
pc=14+1=15
Считаем.
Если бы мы не добавили к pc единицу, то получилось бы:
А это немного не треть...
А так как мы добавили единицу, то получилось:
То что нам надо!