close

القائمة الرئيسية

الصفحات

أخبار الرياضة

المصفوفات في لغة سي بلس بلس | ++Array in c

المصفوفات في لغة سي Array

المصفوفات في C ++ هي مجموعة من العناصر من نوع بيانات متشابه مثل int ، char ، float ، double ، إلخ . والتي يتم تخزينها باستخدام قيمة الفهرس ويمكن الوصول إليها بسهولة عن طريق قيمة الفهرس فقط. ينفذ لتخزين جميع مثيلات المتغيرات في متغير واحد. في C ++ ، يمكن التصريح عن المصفوفة باستخدام ثلاث طرق مختلفة - عن طريق تحديد حجم المصفوفة ، عن طريق تهيئة عناصر المصفوفة مباشرة وتحديد حجم المصفوفات بعناصرها.
المصفوفات في C ++
للسماح بمعالجة البيانات باستخدام أي تطبيق ، نحتاج أولاً إلى إحضار البيانات إلى التطبيق. هذا يعني أنه يجب أن يكون هناك بعض المساحة في التطبيق حيث يجب تخزين القيمة حتى يتم تشغيل البرنامج. من أجل خدمة الغرض من تخزين القيم ، تقدم لنا لغة البرمجة متغيرًا. تستخدم المتغيرات لتخزين القيم بحيث يمكن استخدامها من قبل التطبيق لتوليد النتيجة المتوقعة. أثناء تخزين المتغيرات ، تحتل بعض القيمة مساحة في الذاكرة المخصصة للتطبيق. لذا فإن النهج الأمثل للترميزهو التأكد من أن استخدام المتغير يجب أن يكون عند أدنى مستوى ممكن. من أجل التخفيف من مشكلة تخصيص الذاكرة بسبب إنشاء عدد كبير من المتغيرات ، ظهر مفهوم المصفوفة. يمكن اعتبار المصفوفة كقائمة قيم تنتمي إلى نفس نوع البيانات. في هذه المقالة ، سنتعلم عن المصفوفة باستخدام لغة البرمجة C ++.

المصفوفات في C ++؟

 شرح المصفوفات: دور المصفوفة هو تخزين قيم من نفس نوع البيانات. من المفترض أن تعمل بنفس الطريقة التي يعمل بها المتغير والنقطة الإضافية الوحيدة التي لديها أكثر من المتغير هي أنها قادرة على الاحتفاظ بعدة قيم في نفس الوقت. عندما نقوم بإنشاء المصفوفة في C ++ أو أي لغة برمجة ، يجب أن نذكر عدد المتغيرات التي نريد تخزينها في المصفوفة.
وتجدر الإشارة إلى أن حجم المصفوفة يظل ثابتًا طوال وقت تشغيل التطبيق ولا يمكن تغييره ديناميكيًا. بمجرد تحديد حجم المصفوفة ، يمكننا تخزين نفس عدد القيم فيه. إذا تم تعريف نوع بيانات المصفوفة على أنه عدد صحيح ، فلن يقبل أي قيمة ليست عددًا صحيحًا. من أجل تحديد القيمة التي يحتفظ بها المصفوفة ، سيحتاج المرء إلى استخدام الفهرس. على سبيل المثال ، إذا كانت المصفوفة قادرةً على الاحتفاظ بقيمتين ، فسيتم تخزين القيمة الثانية في فهرس واحد للمصفوفة حيث يبدأ فهرس المصفوفة بصفر.

كيفية إنشاء المصفوفات في C ++؟

يوضح التفسير أدناه أن كيفية إنشاء مصفوفة في c ++:

تشبه طريقة إنشاء المصفوفة تمامًا إنشاء المتغيرات . الخطوة الأولى هي إعلان المصفوفة. بمجرد الإعلان عن المصفوفة، يمكننا إما تهيئة المصفوفة في نفس الوقت أو يمكن تهيئته لاحقًا. أثناء الإعلان عن المصفوفة ، يجب أن نذكر ثلاثة أشياء: نوع بيانات المصفوفة ، واسم المصفوفة وحجمها. فيما يلي بناء الجملة الذي يوضح كيفية الإعلان عن المصفوفة فقط.

بناء الجملة:
Datatype array_name[size];
Ex. int first_array[10];
يمكن للمصفوفة المعرفة هنا عشر قيم صحيحة. اسم المصفوفة هو first_array والرقم المحدد داخل قوس كبير يوضح حجم المصفوفة. الآن دعنا نرى كيفية إعلان المتغير وتهيئته في نفس الوقت.
الشفرة:

Int first_array[4] = { 1,2,3,4}
Int first_array[]= {1,2,3,4,5,6}
في المثال أعلاه ، رأينا أن المصفوفة التي حددت الحجم 4 قد قبلت القيم الأربع. إذا حاول المرء إرسال أكثر من 4 قيم ، فسيؤدي ذلك إلى حدوث خطأ. أيضًا ، إذا لم تحدد حجم المتغير ، يمكنك تخزين القيمة التي تريدها.

أنواع المصفوفات في C ++

أنواع المصفوفات في C ++
في لغة البرمجة C ++ ، يوجد نوعان رئيسيان من المصفوفات: مصفوفات أحادية البعد ومصفوفات متعددة الأبعاد. يخزن البعد أحادي الأبعاد القيم في شكل قائمة بينما يخزن مصفوفة متعدد الأبعاد القيمة في المصفوفة. أدناه سنرى كل من الأنواع باستخدام مثال.
مصفوفة أحادي البعد
يمكن تعريف مصفوفة أحادي البعد كنوع من المصفوفات القادرة على الاحتفاظ بقيم نوع البيانات نفسه في شكل قائمة. إنه أبسط شكل من مصفوفة لأنه لا يتطلب الكثير من الجهد لتحديد وتهيئة المصفوفة . يمكن تعريفه على أنه[int a [10، حيث int هو نوع البيانات هو اسم المصفوفة وحجم المصفوفة هو 10. المثال أدناه سيجعل الأمور أكثر وضوحًا.
الشفرة:

#include <iostream>
#include <conio.h>
using namespace std;
void main()
{
int val_array[3];
int int_val=1,counter;
cout<<"Please enter three numbers that you want to multiply"<<endl;
for(counter=0;counter<3;counter++)
{
cin>>val_array[counter];
int_val = int_val*val_array[counter];
}
cout<<"The multiplication of these three numbers is = "<<int_val;
getch();
}

تمت كتابة البرنامج أعلاه لقبول ثلاث قيم من المستخدم وبعد ذلك ستتم معالجة هذه القيم لتوليد قيمة الضرب لكل منهم. مستخدم المصفوفة هنا هو اسم val_array والمصفوفة قادرة على الاحتفاظ بثلاث قيم. يتم استخدام الحلقة لاستيعاب القيمة في المصفوفة ثم يتم ضربها. تم تخزين النتيجة النهائية للضرب في متغير int_val. نظرًا لأن الدالة باطلة في طبيعتها ، فلن تُرجع أي قيمة.
الناتج :
وهي مجموعة متعددة الأبعاد يمكن تعريفها بأنها مجموعة التي تحمل القيم في طريقة مصفوفة لا. يتم استخدام مصفوفة ثنائية الأبعاد في كثير من الأحيان ، ومع زيادة حجم البعد ، تصبح المصفوفة معقدًا. على سبيل المثال ، من السهل العمل مع مصفوفة ثنائية الأبعاد بدلاً من العمل مع مصفوفة ثلاثي الأبعاد. تحتاج مصفوفة ثنائية الأبعاد إلى حجمين ليتم تحديدهما لكل بُعد. يمكن أن تكون المصفوفة ثنائية الأبعاد في البرنامج على النحو [int[5] [3. ستكون هذة المصفوفة قادرًا على الاحتفاظ بالقيمة في شكل مصفوفة تحتوي على 5 صفوف وثلاثة أعمدة. دعونا نفهم هذا بمساعدة مثال.
الشفرة:
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
int val_array[5][5];
int count_rows,count_cols,counter1,counter2;
cout<<"Please enter the size of the rows and columns that you wnant to input: ";
cin>>count_rows>>count_cols;
cout<<"PLease enter the values for matrics in row wise manner"<<endl;
for(counter1=0;counter1<count_rows;counter1++)
for(counter2=0;counter2<count_cols;counter2++)
cin>>val_array[counter1][counter2];
cout<<"The matrix will be as follows"<<endl;
for(counter1=0;counter1<count_rows;counter1++)
{
for(counter2=0;counter2<count_cols;counter2++)
cout<<val_array[counter1][counter2]<<"  ";
cout<<endl;
}
getch();
return 0;
}
في هذا البرنامج ، استخدمنا مصفوفة ثنائية الأبعاد. طريقة تعريف المصفوفة باستخدام حجمين ، تنص على أن المصفوفة المستخدمة ذات بعدين. إذا كان هناك ثلاثة أحجام فستكون المصفوفة ثلاثية الأبعاد. يُطلب من المستخدم إدخال عدد الصفوف والأعمدة التي يريدها في المصفوفة. بمجرد تحديد الأرقام من قبل المستخدم ، يُطلب منه إدخال القيم التي يريدها في صفوف وأعمدة المصفوفة. هنا قدم المستخدم 2 3 مما يعني أنه يريد صفين وثلاثة أعمدة في المصفوفة. اعلم أنه يجب عليهم إرسال ست قيم حيث أن المصفوفة ذات صفين وثلاثة أعمدة لها ست قيم. عندما يتم تقديم جميع القيم ، يتم تمثيلها في شكل مصفوفة. يتم تنفيذ البرنامج بأكمله باستخدام مصفوفة ثنائي الأبعاد.
الناتج:
مصفوفة متعدد الأبعاد

طريقة تمرير المصفوفة في C ++

لتمرير المتغير في أي طريقة كمعلمة ، كل ما يحتاجه لقبول القيمة من حيث يطلق عليه هو نوع البيانات واسم المتغير الذي سيحتفظ بالقيمة. يشبه نهج تمرير المصفوفة إلى الطريقة االتي يتم بها تمرير أي متغير عادي. الفرق الوحيد هو ، بدلاً من ذكر متغير واحد ، سنحتاج إلى استخدام المصفوفة بحجم معين في مكان المصفوفة. دعونا نفهم هذا باستخدام بناء الجملة.
بناء الجملة:
//defining method that accepts an array as a parameter.
int handle_array(int a[6]);
هنا اسم الطريقة هو handle_array وله مصفوفة كمعلمة. اسم المصفوفة والمصفوفة قادرة على الاحتفاظ بست قيم. الآن دعونا نرى كيف يمكن تمرير الوسيطة إلى أسلوب handle_array.
بناء الجملة:
int arrr[6] = {1,2,3,4,5,6};
handle_array(arr) ;
أولاً ، نحتاج إلى تعيين القيم لمتغيرات أخرى علينا تمريرها إلى طريقة handle_array. بمجرد تعيين القيم ، نحتاج إلى تمرير مصفوفة كوسيطة أثناء استدعاء دالة handle_array. في المقتطف أعلاه ، من الواضح أن كيفية تعيين المصفوفة مع القيم وتمريرها كوسيطة بحيث يمكن تمرير القيم حيث تم تحديد وظيفة handle_array.
استنتاج
تعتبر المصفوفة في C ++ ميزة أساسية للغاية لأنها تساعد في إدارة الذاكرة وتحسن أيضًا كفاءة البرنامج. يمكن استخدامه في العديد من الخوارزميات ليموت إلى قدرته على تقديم تخزين بيانات متعدد الأبعاد. من الأفضل دائمًا استخدام مصفوفة عندما تكون هناك حاجة لتخزين قيم من نفس نوع البيانات. لا يساعد فقط في الحفاظ على الموارد ولكنه يقلل أيضًا من توقيت تنفيذ البرنامج.

يمكنك أيضًا الاطلاع على مقالاتنا المحددة

تعليقات