المصفوفات (Arrays) C++
الكاتب: Mr.Aziz
تاريخ النشر: 2023-03-05 07:41:18
اهلآ وسهلآ
في هذا الدرس سوف نتعلم عن المصفوفات في اللغة c++ و هذا الدرس مهم جدآ لانه بيقلل عدد الأكواد بشكل كثيير.
المصفوفات: هو يتم تخزين أكثر من قيمة في متغير واحد بدلآ عن كل متغير له قيمة.
المفهوم في هذي المصفوفات أن تختار متغير واحد فقط. و تخزن به أكثر من 100 قيمة.
على سبيل المثال:
لديك أكثر من 100 طالب و تريد تخزن درجات الطلاب بدلآ أن يكون كذا
يصبح الكود غير نظيف أو غير منظم نهائيآ.
و سوف ياخذ منك وقت كثيير جدآ لعمل أكثر من متغير.
في المصفوفات تصبح بهذي الطريقة.
ستلاحظ في السطر 7
يوجد متغير واحد فقط الى هو students ولكن بعد المتغير هو العلامة [ ] و يسمى Index و بداخلها الرقم 100
هذا تعني المصفوفة ويتم تخزين 100 قيمة بداخل index في هذي المتغير فقط.
بعد علامة يساوي وضعنا هذي علامة { } و بداخلها يكون له أكثر من قيمة.
الأن لدينا متغير واحد فقط له أكثر من قيمة! هل تلاحظ أصبح مرتب الأن :).
هكذا المصفوفات. الأن فهمنا ماهو المصفوفات جيد.
ولكن المصفوفات له أستخدامات عديدة سوف أتكلم عنها
1- المصفوفات مع الحلقات (Arrays & loops ):
المصفوفات يمكن أن يتم أستخدامة مع الحلقات لانه يجب أن تستخدمها في حال أن تريد تضع أكثر من قيمة في متغير واحد
على سبيل المثال: لو عندنا متغير عبارة عن المصفوفات و نضيف معاه 5 من القيم مع for loop
على هذا الشكل:
ستلاحظ الأن تم أستخدام for loop مع المصفوفات تمام.
سوف أشرح سطر مع سطر لبناء على الأرقام:
7- cars[5]: تم عمل متغير مع المصفوفة و الحجم يكون 5 تعني مسموح لك تضع 5 قيم فقط.
بعد علامة يساوي يكون القيم التي تم وضعها
8- for loop: هنا الحلقات يتم طباعة القيم من المصفوفات عن طريق الحلقات. راح تلاحظ i < 5 لانه لازم يكون نفس الحجم المصفوفه بضبط 5
9- يتم طباعة المصفوفة التي تم عملها
cout يتم طباعة مثل ماتعلمنا الدرس السابق
i: يتم طباعة أرقام بعد كل زيادة القيمة بداخل int i =0 نفس ماتعلمنا في درس الحلقات
" - " هذي يتم وضع شرط فقط و يعتبر string ليتم طباعة بهذي طريقة المرتبة
1- car ....
في output ستلاحظ تم طباعة بهذي الطريقة
بدء من الصفر الى 4
لانه في المصفوفات يبدء index او الحجم من الصفر
01234 بدلآ عن 12345.
الأن فهمنا عن الحلقات مع المصفوفات:
2- أنواع المصفوفات مع index:
يوجد أكثر من طريقة يتم استخدام المصفوفات و فوق أحد الطرق التي تم أستخدامه
1- المصفوفات مع index مفتوح آي غير محدد مثلآ [ ] بدون أن نضع له أرقام.
مثلآ:
ستلاحظ ألأن بهذا الشكل car[ ] = { "volvo", .......}
الأن يوجد لدينا index بدون رقم يعني مفتوح او غير محدد
بأمكان أن تضع 200 قيم لامانع من ذالك.
2- index مع ارقام محددة:
هذي المرة بتكون محدده مثل ماعملنا المره السابقة
بدل ان يكون index فارغ. الأن نضع له رقم نحدد له كم قيم نسمح له مثلآ 5 فقط.
ستلاحظ الأن مع index محدد له 5 قيم فقط.
لو زاد و أصبح 6. لن يسمح له لانه الحد 5 فقط.
3- تحديد الحجم index عن طريق متغير:
هذي طريقة شبيهة التي شرحنا عنها قبل شوي ولكن هذي المره سنضع رقم محدد.
مثلآ نعمل متغير Size و يكون له رقم فقط.
هكذا
ستلاحظ في index يوجد متغير هو size و المتغير هذا يوجد له قيمة هو 5
بكذا نستطيع نستخدم Size حتى في الحلقات ليسهل علينا نتبع المصفوفات بطريقة سليمة.
4- أدخال القيم من المستخدم في المصفوفات:
هذي طريقة بأمكان ندع المستخدم يدخل القيم بدلآ أن يكون بشكل يدوي:
أولآ نكتب متغير string car[size]
بهذي طريقة نضع متغير car ثم نكتب متغير في index هو الحجم size
المتغير هذا نضع الحد هو 5 مثلآ
ثم نستخدم الحلقات بهذي طريقة:
تابع معي مع الأسطر
ستلاحظ الأن
6- تم عمل متغير خاص بالحجم index و القيمة هو 5 فقط.
7- عملنا متغير المصفوفات مع index هو size لانه المصفوفة مسموح به 5 قيم فقط.
9- تم عمل for loop ولكن ستلاحظ المتغير size تم وضعه كالتالي i < size
size هو قيمة 5 التي تم تخزينه بالبداية:
10- يتم سؤال المستخدم ماهو سيارتك؟
11- تم وضع المتغير بهذي طريقة size[i] ليتم عد index بكل مره
على سبيل المثال size[0] ثم سؤال الى بعده size[1] ثم الى بعده size[2] و هكذا الى ان يصبح الشرط False كما شرحنا بالدرس الحلقات.
12- يتم طباعة بعد أجابة من المستخدم مثلآ بعد اجابة السؤال size[0] سيتم طباعة القيمة الى موجوده في size[0] و أذا تم أجابة السؤال size[1] سيتم طباعة القيمة التي موجوده في size[1]
و هكذا
كما ترى النتائج output بشكل تسلسلي
تم سؤال المستخدم ثم تم طباعة الاجابة مع index
كذا أنتهينا من الدرس المصفوفات