Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

العمليات الرياضية - الجزء الثاني

جزء من قسم Logic & Flow في رحلة Python على Coddy — الدرس 34 من 78.

لنواصل استكشاف العمليات الرياضية على المجموعات، مع التركيز على مفاهيم أكثر تقدماً مثل تقاطع مجموعات متعددة والفرق بين مجموعات متعددة.

تقاطع مجموعات متعددة (& أو intersection()): يمكنك العثور على العناصر المشتركة بين مجموعات متعددة باستخدام عامل & أو طريقة intersection() بشكل متكرر أو عن طريق تمرير مجموعات متعددة إلى طريقة intersection().

set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}
intersection_result = set1 & set2 & set3
# أو
intersection_result = set1.intersection(set2, set3)
print(intersection_result)
# المخرجات: {3}

الفرق بين مجموعات متعددة (- أو difference()): يمكنك العثور على العناصر الفريدة للمجموعة الأولى مقارنة بمجموعات أخرى متعددة باستخدام عامل - أو طريقة difference(). يتم ذلك عن طريق طرح مجموعات متعددة من المجموعة الأولى.

set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}
difference_result = set1 - set2 - set3
# أو
difference_result = set1.difference(set2, set3)
print(difference_result)
# المخرجات: {1, 2, 3}

في هذه الأمثلة، نجد أولاً تقاطع ثلاث مجموعات، مما ينتج عنه مجموعة تحتوي فقط على العنصر المشترك بين المجموعات الثلاث جميعها. بعد ذلك، نجد الفرق بين مجموعات متعددة، مما ينتج عنه مجموعة تحتوي فقط على العناصر الفريدة لـ set1 بعد طرح عناصر set2 و set3.

challenge icon

التحدي

سهل

تخيل أنك تدير نادياً حصرياً حيث يتم تقسيم الأعضاء إلى مجموعات مختلفة بناءً على اهتماماتهم. تريد معرفة:

  1. من هم الأعضاء الذين يتشاركون اهتماماً مشتركاً في جميع المجموعات؟
  2. من هم الأعضاء الفريدون حقاً الذين ينتمون فقط إلى المجموعة الأولى وليس إلى أي مجموعات أخرى؟

اكتب برنامجاً يقوم بما يلي:

  • يأخذ ثلاث مجموعات، group1 و group2 و group3، تمثل أعضاء ثلاث مجموعات اهتمام.
  • يجد ويطبع تقاطع (intersection) المجموعات الثلاث جميعاً (الأعضاء المشتركون في جميع المجموعات).
  • يجد ويطبع فرق (difference) group1 عن المجموعتين الأخريين (الأعضاء الموجودون في المجموعة الأولى فقط).

تحقق من حالات الاختبار لمعرفة تنسيق المخرجات النهائي!

ورقة مرجعية

ابحث عن العناصر المشتركة بين مجموعات متعددة باستخدام التقاطع (intersection):

set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = {3, 4, 5}

# باستخدام عامل التشغيل &
intersection_result = set1 & set2 & set3

# باستخدام التابع intersection()
intersection_result = set1.intersection(set2, set3)

ابحث عن العناصر الفريدة في المجموعة الأولى مقارنة بمجموعات أخرى متعددة باستخدام الفرق (difference):

set1 = {1, 2, 3, 4, 5}
set2 = {4, 5, 6}
set3 = {5, 6, 7}

# باستخدام عامل التشغيل -
difference_result = set1 - set2 - set3

# باستخدام التابع difference()
difference_result = set1.difference(set2, set3)

جرّب بنفسك

group1 = eval(input())
group2 = eval(input())
group3 = eval(input())

# اكتب كودك بالأسفل


# اطبع النتائج
print("Members in all groups:", sorted(list(intersection_result)))
print("Unique members in group1:", sorted(list(difference_result)))
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Logic & Flow