تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
المصفوفة array في لغة الفيجوال بيسسك - vb6
#3
بسم الله الرحمن الرحيم..

السلام عليكم ورحمة الله وبركاته..

أهلاً وسهلاً بكم في الجزء الثالث والأخير من دروس مصفوفة (array)
في لغة VB6..

الجزء الثالث
: المصفوفة (Array) متعددة الأبعاد..

- المصفوفة (Array) متعددة الأبعاد (ثلاثية) :
في هذا النوع من المصفوفات لا يمكن أن نستخدم كلمة
(array) مرة واحدة أو مرتين.. لا بد أن تكون ثلاث أو أكثر..

- المصفوفة
(Array) متعددة الأبعاد (رباعية) :
في هذا النوع من المصفوفات لا يمكن أن نستخدم كلمة
(array) مرة واحدة أو مرتين أو ثلاث.. لا بد أن تكون أربع أو أكثر..

- المصفوفة
(Array) متعددة الأبعاد (خماسية) :
في هذا النوع من المصفوفات لا يمكن أن نستخدم كلمة
(array) مرة واحدة أو مرتين أو ثلاث أو أربع.. لا بد أن تكون خمس أو أكثر..

- وهكذا مع المصفوفات (Array) المتعددة الأبعاد الأخرى (سداسية - سباعية - ثمانية....إلخ)..

لا أعتقد أنك تحتاج إلى هذه الأبعاد من المصفوفة
(array) في أي من مشاريعك أو برامجك مهما كبر حجم المشروع.. ولكن وضعتها لك لكي تفهم فكرة عملها..

- مثال لإستخدام مصفوفة (array) متعددة الأبعاد (ثلاثية).. أو كما يطلق عليها ثلاثية البعد :
أريد أن أضيف لبرنامجي الذي يحمل معلومات عن الدول العربية..
خانة تعرض فيها أسماء عواصم تلك الدول..

* ملحوظة / تستطيع فعل ذلك بمصفوفة ثنائية البعد بكل أريحيه.. ولكن سأعملها بمصفوفة ثلاثية البعد لكي تفهم الفكرة كما قلت..

- أريد برنامجي بهذه الصورة مثلاً :




تستطيع أن تصنع الكود بأكثر من طريقة.. وهذه إحدى الطرق :

[b]كود PHP:
[b]Dim a As Variant
a
= Array(Array("السعودية", "مصر", "سوريا", "الكويت", "اليمن"), Array(Array(30, 100, 23, 1, 20), Array("الرياض", "القاهرة", "دمشق", "الكويت", "اليمن")), " مليون نسمة")
For
i = 0 To 4 Step 1
Text1
= Text1 & a(0)(i) & vbNewLine
Text2
= Text2 & a(1)(0)(i) & a(2) & vbNewLine
Text3
= Text3 & a(1)(1)(i) & vbNewLine
Next i
[/b]



صورة توضيحية لكود المصفوفة :



وهكذا مع بقية المصفوفات المتعددة الأبعاد (رباعية - خماسية - سداسية... إلخ).. وتستطيع أن تصنعها (المصفوفات) بعدة طرق..

- ماذا لو كنت أريد أن أضيف خانة توجد فيها عدد سكان عواصم تلك الدول..
عدد سكان العاصمة وليست الدولة..

- ملاحظة /المعلومات عن عدد السكان في العواصم ليست دقيقة ^_^..

أريد برنامجي بهذه الصورة مثلاً :




سأضيف بعد رابع للمصفوفة السابقة.. ليكون الكود بهذه الطريقة :
[b]كود PHP:
[b]Dim a As Variant
a
= Array(Array("السعودية", "مصر", "سوريا", "الكويت", "اليمن"), Array(Array(30, 100, 23, 1, 20), Array("الرياض", "القاهرة", "دمشق", "الكويت", "اليمن", Array(5, 20, 3, 0.3, 2))), " مليون نسمة")
For
i = 0 To 4 Step 1
Text1
= Text1 & a(0)(i) & vbNewLine
Text2
= Text2 & a(1)(0)(i) & a(2) & vbNewLine
Text3
= Text3 & a(1)(1)(i) & vbNewLine
Text4
= Text4 & a(1)(1)(5)(i) & a(2) & vbNewLine
Next i
[/b]



لاحظ أن عدد سكان العواصم يقع في البعد الرابع لذلك استخدمت أربع فهارس للوصول إلى قيم المصفوفة اللي رقم فهرسها 5..

ملاحظة /أفضل طريقة لفعل هذا الكود هو استخدام مصفوفة ثنائية البعد.. لكن كلامي هنا عن المصفوفة متعددة الأبعاد.. لذلك عملت الكود بها..

ملاحظة مهمة /
أعتقد أن كل ما تود صنعه بمصفوفة متعددة الأبعاد (رباعية فما فوق).. تستطيع صنعه بمصفوفة ثنائية البعد..

وبما إنك فهمت المصفوفة
(أحادية البعد - ثنائية البعد - ثلاثية البعد).. فلا أعتقد أنك تحتاج إلى بقية الأبعاد من المصفوفة في برامجك أومشاريعك..

ولكن وضعتها لك لكي تفهم طريقة صنعها فقط..


صورة توضيحية للكود :




- ماذا لوكنت أريد أن أضيف خانة لأهم الموانئ في تلك الدول.. وأخرى لأهم منتجات تلك الدول..؟!


تستطيع فعل ذلك
بنفس الطريقة السابقة.. وتستطيع إضافة كل تلك الخانات في مصفوفة ثنائية البعد وبكل مرونة..

إلى هنا أكتفي بهذا القدر.. وأتمنى أن لا تسبب لك مصفوفات
(Array) بعد هذه الأجزاء أي هاجس في البرمجة..

حاولت أن أبسط الدرس بكل ما أملك من طرق
(صور توضيحية.. وغيرها).. وأتمنى أن تكون قد استفدت منه..

وأقول لكل شخص مر من هنا.. سواء رد أم لم يرد.. شكر أم لم يشكر.. قيم أم لم يقيم..


مرورك واستفادتك من هذه الدروس يكفيني.. ولكن أسألك شيء واحد.
. (الدعاء) << أرجو أن لا ترد سؤالي..

وللجميع خالص ودّي.. وتقديري.. وشكري.. على المتابعة..


انتهى الدرس..



بقلم : مزيد مرير - أبو ربيع..
[/b][/b]
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
المصفوفة array في لغة الفيجوال بيسسك - vb6 - بواسطة مزيد مرير - 19-02-13, 02:52 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  استخدام أداة التقارير DataReport من خلال الفيجوال بيسك 6.0 RaggiTech 0 8,357 14-10-12, 02:21 PM
آخر رد: RaggiTech
  للمبتدئين - كيفية عمل Setup بالبرنامج المرفق مع الفيجوال بيسك RaggiTech 0 8,635 14-10-12, 02:00 PM
آخر رد: RaggiTech

التنقل السريع :


يقوم بقرائة الموضوع: