فتحات العرب

AD (728x60)

Slider

بلوجر

منوعات

بالصوت وصورة

تكنلوجيا

أقسام المدونة

حصريات

الاخبار

أعلان

Blogroll 2

أعلان

أعلان

صور فلكر

Link List

تابعونا على

Video

تقارير

منوعات

الاثنين، 14 يوليو 2014

الدرس السادس : المصفوفات .

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

(Public / Private) ArrayName(FirstItemIndex To LastItemIndex) As DataType

نشرح :
(Public / Private) : معروفة.
ArrayName : اسم المصفوفة , ويخضع لشروط اسم المتغيرات والثوابت ... إلخ
FirstItemIndex : رقم أول عنصر في المصفوفة.
To : كلمة محجوزة لا بد منها هنا.
LastItemIndex : رقم آخر عنصر في المصفوفة.
As : كلمة تعيين محجوزة.
DataType : نوع البيانات مثل String و Integer.
الصيغة السابقة تستخدم عندما تعرف مصفوفة تبدأ من رقم غير الصفر.
فيما عدا ذلك , يمكنك كتابة :

(Public / Private) ArrayName(LastItemIndex) As DataType

ولإنشاء مصفوفة غير منتهية اكتب :

(Public / Private) ArrayName() As DataType

التعامل مع المصفوفة :
هناك دالتان مهمتها للتعامل مع المصفوفات وهما :
LBound(ArrayName) : وتعيد رقم العنصر الأول في المصفوفة.
UBound(ArrayName) : وتعيد رقم العنصر الأخير في المصفوفة.

التعامل مع العناصر :
يمكنك التعامل مع عناصر المصفوفة كأي متغير ولكن مع ذكر رقم العنصر
فمثلاً , لتعيين قيمة العنصر الخامس في مصفوفة تبدأ من الصفر , نكتب :

ArrayName(4) = "SomeValue"

لاحظ : أنه عندما تكون المصفوفة تبدأ من الصفر , ننقص مقدار 1 من رقم العنصر , فمثلاُ رقم العنصر الرابع هو 3 , ورقم العنصر الخامس هو 4 ... وهكذا.
هناك طريقة أفضل لملأ عناصر المصفوفة , وهي باستخدام الدوارات :

For i = LBound(ArrayName) To UBound(ArrayName)
ArrayName(i) = i

Next i


هنا يكون العنصر رقم 1 له القيمة 1 , ورقم 2 قيمته 2 , وهكذا....
يمكنك إنشاء مصفوفة متعددة الأبعاد من خلال الأمر التالي :

(Public / Private) ArrayName(FirstDimensionIndex , SecondDimensionIndex , 60thDimensionIndex) As DataType

لاحظ أن VB يدعم كحد أقصى 60 بعداً
يمكنك تخيل المصفوفة كجدول.
وهذا رسم بسيط لمصفوفة ثنائية الأبعاد :
[attachment=70083:arr.JPG]
مصفوفات الأدوات :
الادوات والكائنات أيضاً لها مصفوفات
فمثلاً , ضع على النموذج أداة زر أمر
ثم قم بنسخ الأداة , ولصقها
تظهر لك الرسالة التالية :

You already have a control named 'Command1' . Do you want to create a control array ?

- إن اخترت Yes فسيقوم بإنشاء مصفوفة كائنات.
- إن اخترت No فلن ينشئ مصفوفة كائنات.
- إن اخترت Cancel ستلغى عملية النسخ.
لذا اختر Yes
ضع ثلاثة أزرار أخرى بنفس الشكل (نسخ , لصق , Yes).

الآن , انقر نقراً مزدوجاً على أحد الأزرار , تظهر نافذة الكود , ولكن ...
إجراء Click مختلف , فقد أضافة إليه المتغير Index وهو يمثل رقم العنصر في المصفوفة.
اكتب في هذا الإجراء :

Msgbox Index

فعند الضغط على أي زر فسيعرض لك الترتيب الخاص به.

ملحوظة بخصوص التعامل مع المصفوفات , وهي أمر ReDim حيث أنه يقوم بإعادة تعريف المصفوفة.

يمكنك الإستفادة من هذا الامر في بعض الحالات عندما لا تكون تعرف عدد عناصر المصفوفة عند تعريفها , فيمكنك بعد استخراج عددها , أن تعيد تعريف المصفوفة بالشكل المناسب
وصيغة الأمر كالتالي :

ReDim ArrayName(NumberOfItems) As DataType

أرجو أن يكون الدرس مفيدا , وأن ينال إعجابكم.
والسلام عليكم و رحمة الله و بركاته.
القسم:

صممت بواسطة :

مدونتنآ تسعى إلى تحقيق آلدعم للمبرمجين العرب لتشجيعهم وتوصيل اعمالهم للعالم .

0 التعليقات:

إرسال تعليق

Find Us On Facebook

تابعنا على فيس بوك
اضغط على اعجبني - like ليصلك كل ما هو جديد

 
كل الحقوق محفوظة © محترفين البرمجة

تعريب وتطوير S i R - D o O o M