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

إضافة العناصر

جزء من قسم Logic & Flow في رحلة C++ على Coddy — الدرس 11 من 56.

الآن بعد أن عرفت كيفية إنشاء المتجهات (vectors)، دعنا نتعلم كيفية إضافة عناصر إليها بعد إنشائها. تُعد الطريقة push_back() هي أداتك الأساسية لزيادة حجم المتجه عن طريق إضافة عناصر جديدة إلى نهايته.

تأخذ الدالة push_back() وسيطًا واحدًا - القيمة التي تريد إضافتها - وتضيفها إلى نهاية الـ vector:

std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);

في هذا المثال، نبدأ بمتجه فارغ ونستخدم push_back() لإضافة ثلاثة أعداد صحيحة. بعد هذه العمليات، يحتوي المتجه الخاص بنا على العناصر [10, 20, 30] بهذا الترتيب.

تكمن روعة push_back() في أنها تتعامل مع كافة عمليات إدارة الذاكرة تلقائيًا. فعندما تضيف عناصر وتنفد المساحة في الـ vector، فإنها تقوم تلقائيًا بتخصيص المزيد من الذاكرة ونسخ العناصر الموجودة إلى الموقع الجديد. وهذا يجعل الـ vectors مريحة للغاية لبناء مجموعات من البيانات عندما لا تعرف الحجم النهائي مسبقًا.

challenge icon

التحدي

سهل

قم بإنشاء برنامج يوضح إضافة عناصر إلى vector باستخدام طريقة push_back(). ستبدأ بـ vector فارغ وتقوم ببنائه ديناميكيًا عن طريق إضافة أرقام في تسلسل محدد.

سيتم توفير المدخلات التالية:

  • عدد صحيح n يمثل عدد الأرقام التي سيتم إضافتها إلى الـ vector
  • ثم n من الأعداد الصحيحة التي يجب إضافتها إلى الـ vector واحدًا تلو الآخر

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

  1. إنشاء std::vector<int> فارغ باسم numbers
  2. استخدام حلقة (loop) لقراءة كل من أرقام المدخلات الـ n
  3. لكل رقم، استخدم push_back() لإضافته إلى نهاية الـ vector
  4. بعد إضافة كل رقم، قم بطباعة الحجم الحالي للـ vector والرقم الذي تمت إضافته للتو
  5. أخيرًا، قم بطباعة جميع العناصر الموجودة في الـ vector في سطر واحد، مفصولة بمسافات

استخدم تنسيق المخرجات التالي تمامًا:

Added [number], size is now [current size]
Added [number], size is now [current size]
...
Final vector: [num1] [num2] [num3] ...

استخدم طريقة .size() للحصول على العدد الحالي للعناصر في الـ vector بعد كل إضافة. بالنسبة للمخرجات النهائية، استخدم عامل الأقواس المربعة [] للوصول إلى كل عنصر عن طريق الفهرس (index).

ورقة مرجعية

استخدم push_back() لإضافة عناصر إلى نهاية الـ vector:

std::vector<int> numbers;
numbers.push_back(10);
numbers.push_back(20);
numbers.push_back(30);

تقوم الطريقة push_back() بإدارة الذاكرة تلقائيًا، وتوسيع الـ vector حسب الحاجة عند إضافة العناصر.

جرّب بنفسك

#include <iostream>
#include <vector>
using namespace std;

int main() {
    // قراءة عدد العناصر المراد إضافتها
    int n;
    cin >> n;
    
    // إنشاء متجه (vector) فارغ
    vector<int> numbers;
    
    // TODO: اكتب كودك هنا
    // اقرأ n من الأرقام وأضفها إلى المتجه باستخدام push_back()
    // اطبع المخرجات المطلوبة بعد كل عملية إضافة
    
    // طباعة المتجه النهائي
    cout << "Final vector: ";
    // TODO: اطبع جميع العناصر مفصولة بمسافات
    
    return 0;
}
quiz iconاختبر نفسك

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

جميع دروس Logic & Flow