program weight_class;
var x, y:integer;
label 10,20;
begin
10:Writeln ('введите вес спорсмена в кг');
Readln(x);
if x<69 then
Writeln('Спортсмен весом ', x, 'кг, относится к легкой категории');
if (x>=69) and (x<85) then
Writeln('Спортсмен весом ', x, 'кг, относится к средней категории');
if (x>=85) and (x<105) then
Writeln('Спортсмен весом ', x, 'кг, относится к тяжелой категории');
if x>=105 then
Writeln('Спортсмен весом ', x, 'кг, относится к супертяжелой категории');
Writeln(' Будете еще вводить вес спортсмена: 1-Да, другая любая цифра-Нет');
Readln (y);
if y=1then
goto 10;
end.
Объяснение:
# 1.
# Полагаю, что в техническом задании ошибка и считаю фразу "делятся на" фразой "целочисленно делятся на".
def IsDivisible(digit, n): return (digit % n == 0)
digits=range(20, 50 + 1)
required=[str(digit) for digit in digits if IsDivisible(digit, 2) and not IsDivisible(digit, 5)]
print("Result:\n", '\n'.join(required))
# 2.
# Боль от запятой. Голову изломал от этого дробного остатка...
digits=range(35, 87 + 1)
required=[str(digit) for digit in digits if digit % 7 == 1 or digit % 7 == 2 or digit % 7 == 5]
print("Result:\n", '\n'.join(required))