Условие
Из 120 студентов Python изучают 70, SQL — 55, оба языка — 30. Найдите число изучающих хотя бы один язык, только Python, только SQL и ни одного.
Решение по шагам
Сложение 70+55 учитывает каждого из 30 студентов общей группы дважды. Поэтому для объединения вычитаем пересечение: 70+55−30=95. Только Python изучают 70−30=40, только SQL — 55−30=25. Вне обеих групп остаются 120−95=25 человек.
Получились четыре непересекающиеся группы: только Python, оба языка, только SQL и ни одного. Именно такое разбиение позволяет проверить ответ без повторного применения формулы.
Проверка результата
Численности четырёх групп складываются в 40+30+25+25=120. По ним восстанавливаются исходные показатели: 40+30=70 и 25+30=55.
Типичная ошибка
Нельзя просто сложить числа участников: группы пересекаются. Нельзя также вычесть 30 дважды из суммы 125, когда требуется объединение, а не число изучающих ровно один язык.
Что даёт этот метод
Для двух конечных множеств |A∪B|=|A|+|B|−|A∩B|. Пересечение — поправка за повторный счёт; та же идея работает для клиентов, документов и выборок.
Дальше по теме
Комбинаторика и дискретная математика: другие задачи и разборы.
Учебное условие и объяснение сформулированы редакцией damirock.com. Это самостоятельный разбор, а не официальный билет или ключ экзамена. Числа относятся к модели задачи.