معاملات المصفوفات
جزء من قسم الأساسيات في رحلة Ruby على Coddy. الدرس 71 من 88.
توفر Ruby عوامل تشغيل خاصة تتيح لك دمج المصفوفات ومقارنتها ومعالجتها بطرق قوية. تسهّل هذه العوامل العمل مع مصفوفات متعددة في آنٍ واحد.
يُسلسل المعامل + مصفوفتين في مصفوفة جديدة:
a = [1, 2, 3]
b = [4, 5, 6]
combined = a + b
puts combined # المخرجات: 1, 2, 3, 4, 5, 6يزيل المعامل - العناصر من المصفوفة الأولى التي تظهر في الثانية:
all_numbers = [1, 2, 3, 4, 5]
to_remove = [2, 4]
result = all_numbers - to_remove
puts result # المخرجات: 1، 3، 5يعيد العامل & العناصر common الموجودة في كلتا المصفوفتين (تقاطع):
a = [1, 2, 3, 4]
b = [3, 4, 5, 6]
common = a & b
puts common # المخرجات: 3, 4يَدمج المُعامِل | المصفوفات ويزيل التكرارات (union):
a = [1, 2, 3]
b = [3, 4, 5]
union = a | b
puts union # المخرجات: 1, 2, 3, 4, 5All هذه المعاملات تنشئ arrays جديدة وتترك arrays الأصلية دون تغيير.
التحدي
سهلRead سطرين من input، يحتوي كل منهما على أعداد صحيحة مفصولة بفواصل:
- المصفوفة الأولى (مثلًا:
1,2,3,4,5) - المصفوفة الثانية (مثلًا:
3,4,5,6,7)
Perform العمليات التالية وPrint النتائج، كل نتيجة في سطر خاص بها:
- Print كل عنصر من concatenation للمصفوفتين (باستخدام
+) - Print
---باعتباره separator - Print كل عنصر من difference (المصفوفة الأولى ناقص الثانية، باستخدام
-) - Print
---باعتباره separator - Print كل عنصر من intersection (العناصر common، باستخدام
&) - Print
---باعتباره separator - Print كل عنصر من union (العناصر combined من دون تكرارات، باستخدام
|)
على سبيل المثال، إذا كانت input هي 1,2,3,4,5 و3,4,5,6,7، فيجب أن يكون الناتج:
1
2
3
4
5
3
4
5
6
7
---
1
2
---
3
4
5
---
1
2
3
4
5
6
7إذا كانت input هي 10,20,30 و30,40,50، فيجب أن يكون الناتج:
10
20
30
30
40
50
---
10
20
---
30
---
10
20
30
40
50إذا كانت input هي 5,10,15 و1,2,3، فيجب أن يكون الناتج:
5
10
15
1
2
3
---
5
10
15
---
---
5
10
15
1
2
3جرّب بنفسك
# اقرأ مصفوفات الإدخال
input1 = gets.chomp.split(',').map(&:to_i)
input2 = gets.chomp.split(',').map(&:to_i)
# TODO: اكتب الكود الخاص بك أدناه
# نفّذ العمليات التالية:
# 1. الدمج باستخدام +
# 2. الفرق باستخدام -
# 3. التقاطع باستخدام &
# 4. الاتحاد باستخدام |
# اطبع كل نتيجة مع "---" كفاصل بين العملياتيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم13المصفوفات المتقدمة
تقطيع المصفوفات باستخدام النطاقاتتقطيع المصفوفات باستخدام الفهارسمعاملات المصفوفاتدالة Include?2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأتدرّب بنفسك: مترجم Ruby عبر الإنترنت