From f0b9c944fa48d61f6597305483cd820358f8c625 Mon Sep 17 00:00:00 2001 From: Dasha Date: Thu, 2 Oct 2025 12:19:30 +0500 Subject: [PATCH] 1 --- 1 | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 1 diff --git a/1 b/1 new file mode 100644 index 0000000..ca6a7bc --- /dev/null +++ b/1 @@ -0,0 +1,48 @@ +# Все возможные фамилии учеников +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) \ No newline at end of file