Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Решение задачи Программирование python: Даны четыре числа: a, b, q и r.

Анютка Знаток (326), на голосовании 1 неделю назад
Даны четыре числа: a, b, q и r. Если q — это неполное частное при делении a на b, а r — остаток, выведите "правильно", а иначе — "неправильно".Ошибка на тесте
Дополнен 1 месяц назад
правильный ответ
Голосование за лучший ответ
Константин Бельков Гуру (3721) 1 месяц назад
забыли добавить в IF элемент проверки И (and)
if a//b==q and a%b==r
АнюткаЗнаток (326) 1 месяц назад
Константин Бельков Гуру (3721) Анютка, извините опечятался. (забыл) надо В Python существуют следующие логические операции над булевскими объектами: «И» (логическое умножение, конъюнкция). «ИЛИ» (логическое сложение, дизъюнкция). «НЕ» (логическое отрицание, инверсия). В Python все эти операции представлены в виде соответствующих символов: and, or и not. НАДО and
АнюткаЗнаток (326) 1 месяц назад
теперь неудовлетворяет двум тестам
АнюткаЗнаток (326) 1 месяц назад
правильный ответ:
Константин Бельков Гуру (3721) Анютка, ну можно и так. просто весь компьютер построен на булевой алгебре от нее не убежишь
Avis Оракул (90514) 1 месяц назад
Очевидно, в этом задании вас пытаются научить делению с остатком. Вот этому: https://ru.wikipedia.org/wiki/Деление_с_остатком

Из чего, не менее очевидно, следует, что условие в if у вас просто неправильное.
a//b=q: 9//4 = 2, а остаток (13) вовсе не имеет значения получается? Проверять надо на то самое равенство, которое является определением деления с остатком.
Татьяна Просветленный (36344) 1 месяц назад
 def check_division(a: int, b: int, q: int, r: int) -> str: 
return "правильно" if a == b * q + r and 0 <= r < abs(b) else "неправильно"

if __name__ == "__main__":
a, b, q, r = map(int, input().split())
print(check_division(a, b, q, r))
Результаты тестов
 7 3 2 1 
правильно
 8 3 1 2 
неправильно
Похожие вопросы