المصفوفات أحادية البعد One-Dimensional Arrays في البرمجة
تُعتبر المصفوفات أحادية البعد (One-Dimensional Arrays) من أهم هياكل البيانات الأساسية في البرمجة، وهي أول نوع من أنواع المصفوفات يتعلمه المبرمج. تسمح هذه المصفوفات بتخزين مجموعة من القيم المتشابهة داخل متغير واحد، مما يسهل إدارة البيانات والتعامل معها بطريقة منظمة وفعالة.
تُستخدم المصفوفات أحادية البعد في جميع لغات البرمجة تقريبًا مثل JavaScript وPython وJava وC++، وتُعد أساسًا لفهم الأنواع الأخرى من المصفوفات الأكثر تعقيدًا.
ما هي المصفوفة أحادية البعد؟
المصفوفة أحادية البعد هي قائمة تحتوي على مجموعة من العناصر المرتبة في صف واحد، ويمكن الوصول إلى كل عنصر باستخدام رقم يسمى الفهرس (Index).
مثال
let students = ["أحمد", "محمد", "علي"];
في هذا المثال: 0 قيمة احمد و 1 قيمة محمد و 2 قيمة علي
ملاحظة: تبدأ الفهارس في معظم لغات البرمجة من الرقم 0 وليس 1.
لماذا نستخدم المصفوفات أحادية البعد؟
بدلًا من كتابة:
let student1 = "أحمد";
let student2 = "محمد";
let student3 = "علي";
يمكن كتابة:
let students = ["أحمد", "محمد", "علي"];
مما يجعل الكود:
أقصر.
أكثر تنظيمًا.
أسهل في التعديل والصيانة.
إنشاء مصفوفة أحادية البعد
مصفوفة أرقام
let numbers = [10, 20, 30, 40];
مصفوفة نصوص
let colors = ["أحمر", "أزرق", "أخضر"];
مصفوفة قيم منطقية
let permissions = [true, false, true];
الوصول إلى العناصر
يمكن الوصول لأي عنصر باستخدام الفهرس.
let colors = ["أحمر", "أزرق", "أخضر"];
console.log(colors[0]);
النتيجة أحمر
الوصول إلى العنصر الثاني
console.log(colors[1]);
النتيجة أزرق
تعديل عنصر داخل المصفوفة
let colors = ["أحمر", "أزرق", "أخضر"];
colors[1] = "أصفر";
console.log(colors);
النتيجة
["أحمر", "أصفر", "أخضر"]
معرفة عدد العناصر
تُستخدم الخاصية length.
let students = ["أحمد", "محمد", "علي"];
console.log(students.length);
النتيجة 3
استخدام الحلقات مع المصفوفات
تُستخدم الحلقات غالبًا لعرض جميع عناصر المصفوفة.
مثال باستخدام for
let students = ["أحمد", "محمد", "علي"];
for(let i = 0; i < students.length; i++) {
console.log(students[i]);
}
النتيجة
أحمد
محمد
علي
إضافة عناصر إلى المصفوفة
إضافة عنصر في النهاية
let fruits = ["تفاح", "برتقال"];
fruits.push("موز");
console.log(fruits);
النتيجة
["تفاح", "برتقال", "موز"]
إضافة عنصر في البداية
fruits.unshift("عنب");النتيجة
["عنب", "تفاح", "برتقال", "موز"]
حذف عناصر من المصفوفة
حذف آخر عنصر
fruits.pop();
حذف أول عنصر
fruits.shift();
البحث داخل المصفوفة
يمكن استخدام الدالة includes().
let students = ["أحمد", "محمد", "علي"];
console.log(students.includes("محمد"));النتيجة true
مثال عملي: حساب مجموع الأرقام
let numbers = [10, 20, 30, 40];
let sum = 0;
for(let i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
console.log(sum);
النتيجة 100
مثال عملي: إيجاد أكبر رقم
let numbers = [15, 8, 42, 23, 10];
let max = numbers[0];
for(let i = 1; i < numbers.length; i++) {
if(numbers[i] > max) {
max = numbers[i];
}
}
console.log(max);
النتيجة 42
مثال عملي: طباعة الأعداد الزوجية
let numbers = [1, 2, 3, 4, 5, 6];
for(let i = 0; i < numbers.length; i++) {
if(numbers[i] % 2 === 0) {
console.log(numbers[i]);
}
}
النتيجة
2 4 6
الأخطاء الشائعة
الوصول إلى فهرس غير موجود
let names = ["أحمد", "محمد"];
console.log(names[5]);
النتيجة undefined
لأن العنصر غير موجود داخل المصفوفة.
متى نستخدم المصفوفات أحادية البعد؟
تُستخدم في:
- قوائم الطلاب.
- قوائم المنتجات.
- أسماء المستخدمين.
- درجات الطلاب.
- تخزين النتائج والإحصائيات.
- التطبيقات والألعاب.
مميزات المصفوفات أحادية البعد
- سهلة التعلم والاستخدام.
- تساعد على تنظيم البيانات.
- تسهل التعامل مع الحلقات.
- تقلل عدد المتغيرات داخل البرنامج.
- مناسبة لمعظم التطبيقات البسيطة والمتوسطة.
تُعد المصفوفات أحادية البعد (One-Dimensional Arrays) من أهم المفاهيم الأساسية في البرمجة، لأنها توفر طريقة فعالة ومنظمة لتخزين مجموعة من القيم داخل متغير واحد. ومن خلال فهم كيفية إنشاء المصفوفات والوصول إلى عناصرها وتعديلها واستخدام الحلقات معها، يصبح بإمكان المبرمج كتابة برامج أكثر احترافية وكفاءة. لذلك فإن إتقان هذا النوع من المصفوفات يُعتبر خطوة أساسية لكل مبتدئ في عالم البرمجة.
