Files
210/1

48 lines
2.1 KiB
Plaintext
Raw Normal View History

2025-10-02 12:19:30 +05:00
# Все возможные фамилии учеников
famils = {"Петров", "Сидоров", "Иванов", "Козляков", "Колмокозков", "Дрозников"}
# Должники по предметам (заданы вручную)
math_fails = {"Иванов", "Козляков"}
lang_fails = {"Петров", "Дрозников", "Сидоров"}
info_fails = {"Колмокозков", "Иванов", "Петров"}
print("=" * 50)
print("Анализ должников по предметам")
print("=" * 50)
# 1) Долги и по математике, и по информатике → пересечение
math_and_info = math_fails & info_fails
print("1) Должники и по математике, и по информатике:")
print(" ", *sorted(math_and_info) if math_and_info else ["—"])
# 2) Должники по всем трём предметам → пересечение всех трёх
all_three = math_fails & lang_fails & info_fails
print("\n2) Должники по всем трём предметам:")
print(" ", *sorted(all_three) if all_three else ["—"])
# 3) У кого ровно один долг
only_math = math_fails - lang_fails - info_fails
only_lang = lang_fails - math_fails - info_fails
only_info = info_fails - math_fails - lang_fails
exactly_one = only_math | only_lang | only_info
print("\n3) У кого ровно один долг:")
print(" ", *sorted(exactly_one) if exactly_one else ["—"])
# 4) Проверка: Сидоров в математике или русском?
sidorov_in_math = "Сидоров" in math_fails
sidorov_in_lang = "Сидоров" in lang_fails
if sidorov_in_math and sidorov_in_lang:
sid_res = "Да, и по математике, и по русскому"
elif sidorov_in_math:
sid_res = "Да, только по математике"
elif sidorov_in_lang:
sid_res = "Да, только по русскому"
else:
sid_res = "Нет"
print("\n4) Сидоров в должниках по математике или русскому?")
print(" ", sid_res)
print("=" * 50)