تعلم لغة سي بلس بلس – الدرس الثالث المصفوفات Arrays
ما هي المصفوفة
س 1. لنفترض أنك بحاجة إلى تخزين علامات 5 طلاب في اختبار CPP (5 أعداد صحيحة أو قيم النقطة العائمة) ، ماذا ستفعل؟
س 2. أو لنفترض أنك بحاجة إلى تخزين ورقة مفاتيح لاختبار MCQ تحتوي على 6 أسئلة (6 قيم أحرف).
في هذه المشاكل ، نستخدم المصفوفات. إنها مجموعة من نفس النوع من المتغيرات (مثل int أو char) مجمعة معًا. هذا تصريح مصفوفة:
<type> Name[no of elements];
الآن بعد أن عرفنا بناء الجملة للتصريح عن مصفوفة ، سيكون حل Q1 هو الإعلان عن مصفوفة من النوع int بالحجم 5.
int marks[5];
لنبدأ الآن في تهيئة المصفوفة في Q1. لنفترض أن علامات الطلاب الخمسة هي 96،92،78،54 و 86 ، ثم يمكننا إعطاء قيم الصفيف الخاصة بنا ،
marks[0] = 96; marks[1] = 92; marks[2] = 78; marks[3] = 54; marks[4] = 86;
لذا فإن الكود الكامل للتصريح والتهيئة سيكون ،
int marks[5]; marks[0] = 96; marks[1] = 92; marks[2] = 78; marks[3] = 54; marks[4] = 86;
أو يمكننا القيام بذلك في سطر واحد
int marks[5] = { 96, 92, 78, 54, 86};
الآن يمكننا الوصول إلى عناصر هذه المصفوفة باستخدام []. المصفوفات هي 0 مفهرسة ، لذا سيكون أول عنصر لديك علامات [0] أي 96. لنطبع هذا.
cout<<marks[0]<<endl;
يطبع العنصر الأول أي 96.
يمكن فهرسة العنصر الثاني كعلامات [1] ، والعنصر الثالث كعلامات [2] وهكذا.
الآن يمكننا طباعة المصفوفة بأكملها باستخدام حلقة for ، والتي سوف ندرسها في فصول أخرى.
for(int i=0;i<5;i++) { cout<< marks[i] <<endl; //for printing the i'th element }
هذا يطبع ،
96 92 78 54 86
الآن بالنسبة إلى Q2 ، افترض أن المفاتيح هي “أ” و “ب” و “أ” و “ج” و “د” و “ج”. الآن إعلان المصفوفة هو
char keys[6] = {'a','b','a','c','d','c'};
تمرين
قم بتغيير البرنامج في الأسفل بطريقة بحيث يقوم بتهيئة مصفوفة المفاتيح بالقيم “b” و “c” و “d” و “a” و “b” و “b” ويطبع العنصر الثالث.
#include <iostream> using namespace std; int main() { char keys[6] = {'a','b','a','c','d','c'}; return 0; }
الحل
#include <iostream> using namespace std; int main() { char keys[6] = {'a','b','a','c','d','c'}; return 0; }
سنحصل على النتيجة التالية عند التشغيل
d