عبود عبود
14-09-2013, 02:19 PM
http://i.imgur.com/57UrtCm.gif
http://i.imgur.com/emf2NIh.gif
ذكرنا سابقا أن المصفوفات أو الجداول هى عبارة عن مجموعة أزواج من المفاتيح و القيم
وبناءا على ذلك فإن لو أن هناك زوج من المفاتيح و القيم مثل الجدول التالى للتوضيح :
t = {a = "123"}
فإن تفصيل تعريف الجدول السابق أو المصفوفة السابقة تفصيلا دقيقا فيكون كالتالى :
t هى إسم المصفوفة التى نعمل عليها الآن
{ و } علامات الأقواس الكبيرة التى ترمز إلى المصفوفة
المتغير الذى إسمة a هو المفتاح الذى عن طريقة يمكننا الوصول إلى القيمة المخزنة فية أو قيمتة
"123" هو القيمة الموضوعة و المعبرة عن المتغير a
ككل تسمى قيمة و مفتاح a = "123"
إذن وبناءا على الجدول السابق أو المصفوفة السابقة فإننا قلنا سابقا أن هناك طريقتان للإستدعاء حيث وجود متغير إسمة a
ذكرنا أنة يمكن أن يكون الإستدعاء هكذا :
t.a
أو
t["a"]
:abc_012: أعتقد بهذا التوضيح تم معرفة القيمة و المفتاح للإستدعاء
http://i.imgur.com/NfWIHC5.gif
نأخذ على سبيل التطوير و التقدم فى بناء جدول أو مصفوفة " فكلا التعبيرين صحيحين " يحتوى على عدد من العناصر و ليكن 4 عناصر على سبيل المثال يكون شكل الجدول كالآتى :
t = {"abood", "Haitham", "aziz", "khaled"}
:abc_087: من خلال النظرة العامة المباشرة على المصفوفة السابقة نجد أن :
abood هو رقم 1 فى المصفوفة t
Haitham هو رقم 2 فى المصفوفة t
aziz هو رقم 3 فى المصفوفة t
khaled هو رقم 4 فى المصفوفة t
إذن هذة المصفوفة السابقة هى مصفوفة بسيطة جدا حيث لا يوجد بها أى متغيرات فهى ثابتة فى القيم و ثابتة فى المفاتيح
إذن يمكننا أن نتعامل معها مباشرة للحصول على القيم التى بداخلها فيكون للحصول على القيمة الأولى فى هذة المصفوفة
فــــ بالتالى سنحصل على abood فإننا نكتب :
t[1]
وللحصول على القيمة الثانية فى المصفوفة t السابقة
فــــ بالتالى سنحصل على Haitham فإننا نكتب :
t[2]
وللحصول على القيمة الثالثة فى المصفوفة t السابقة
فــــ بالتالى سنحصل على aziz فإننا نكتب :
t[3]
وللحصول على القيمة الرابعة فى المصفوفة t السابقة
فــــ بالتالى سنحصل على khaled فإننا نكتب :
t[4]
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {"abood", "Haitham", "aziz", "khaled"}
Dialog.Message("Number 1", t[1], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t[2], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t[3], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t[4], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
http://i.imgur.com/NfWIHC5.gif
نأخذ على سبيل التطوير و التقدم فى بناء جدول أو مصفوفة " فكلا التعبيرين صحيحين " يحتوى على عدد من العناصر و ليكن 4 عناصر على سبيل المثال ولكن كل عنصر لة متغير معبر عنة يكون شكل الجدول كالآتى :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
:abc_012: ذكرنا سابقا أن المتغير هو المفتاح للوصول إلى القيمة
وبالتالى للوصول إلى القيمة abood فإننا يجب أن نعرف أن المفتاح هو a
وبالتالى للوصول إلى القيمة Haitham فإننا يجب أن نعرف أن المفتاح هو b
وبالتالى للوصول إلى القيمة aziz فإننا يجب أن نعرف أن المفتاح هو c
وبالتالى للوصول إلى القيمة khaled فإننا يجب أن نعرف أن المفتاح هو d
:abc_012: وذكرنا أيضا عند وجود متغيرات يكون التعامل بطريقتين أحدهما كانت :
الطريقة الأولى :
المفتاح و علامة نقطة . و إسم المصفوفة
وبالتالى للوصول إلى القيمة abood فنكتب t.a
وبالتالى للوصول إلى القيمة Haitham فنكتب t.b
وبالتالى للوصول إلى القيمة aziz فنكتب t.c
وبالتالى للوصول إلى القيمة khaled فنكتب t.d
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
Dialog.Message("Number 1", t.a, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t.b, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t.c, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t.d, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
الطريقة الثانية :
غلق القوس المربع و وضع المفتاح داخل علامتى تنصيص و فتح قوس مربع و إسم المصفوفة
وبالتالى للوصول إلى القيمة abood فنكتب :
t["a"]
وبالتالى للوصول إلى القيمة Haitham فنكتب :
t["b"]
وبالتالى للوصول إلى القيمة aziz فنكتب :
t["c"]
وبالتالى للوصول إلى القيمة khaled فنكتب :
t["d"]
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
Dialog.Message("Number 1", t["a"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t["b"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t["c"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t["d"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
http://i.imgur.com/NfWIHC5.gif
إذن الخلاصة مما سبق هل يمكن وضع الأرقام مباشرة فى المصفوفة أو أى مصفوفة بدون إستخدام علامة تنصيص ؟
نعم يمكن
مثال على ذلك
t = {1, 2, 3, 4}
أو يمكن أن تكون المصفوفة كالتالى :
t = {"1", "2", "3", "4"}
:abc_012: وهل هذا الكلام يطبق أيضا على الحروف ؟ هل يمكن أن تكتب الحروف بداخل المصفوفة بدون علامة التنصيص ؟
الإجابة لا و نعم أيضا
كيف لا مثال على ذلك :
t = {a, b, c, d}
:abc_012: هل فى المصفوفة السابقة يمكن إستدعاء عناصرها ؟ لا يمكن
:abc_012: طيب أنت قلت فى نفس الوقت نعم فكيف يتم ذلك ؟
يتم ذلك إذا تم معرفة قيمة كل حرف من الحروف الموجودة داخل المصفوفة t :abc_088:
:abc_012: إذن ما تم وضعة فى المصفوفة ليست حروف ثابتة القيم ولكنها الآن متغيرات
:abc_138: إذن يعرف المتغير على أنة قيمة غير ثابتة أو غير محددة إلا بتحديد مسبق
:abc_113: إذن لتعديل المصفوفة و كتابتها بالطريقة الصحيحة ندخل قيم معروفة للمتغيرات السابقة كإعلان عن كل قيمة على حدى كمثال يكون كالآتى :
a = "a"
b = "b"
c = "c"
d = "d"
t = {a, b, c, d}
وبعد ذلك يمكن الحصول على قيم المصفوفة بدون أخطاء وذلك على حسب ترتيب العناصر فى المجموعة فيكون :
معبر عن قيمة المتغير الأول t[1]
وهكذااااااااااااا
http://i.imgur.com/NfWIHC5.gif
كود أكثر تعقيدا كبناء على ما تم شرحة مسبقا :
f = {c = {b="hazem" , f="ali" , r="khaled"}, d={k="hazem2" , h="ali2" , q="khaled2"}, e={z="hazem3" , x="ali3" , v="khaled3"}}
Dialog.Message("Notice", f["d"]["q"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
f هى حاملة مصفوفات و بها 3 مصفوفات c و d و e
و بكل مصفوفة من الثلاثة مصفوفات يوجد 3 عناصر
هنا سنستدعى العنصر q من المصفوفة d التابعة للمصفوفة f
:abc_012: كان هذا هو رد من تطبيق الأخ خالد " النصل القاطع " بناءا على ما تم شرحة مسبقا
http://i.imgur.com/NfWIHC5.gif
مرحلة كتابة المصفوفات
يمكن كتابة المصفوفات عن طريق الكتابة المباشرة ككتابة المصفوفة بشكل كامل فى سطر واحد مثلا كالآتى :
t = {"abood", "Haitham", "aziz", "khaled"}
أو بطريقة المفاتيح أى بترتيب العناصر داخل المجموعة أو المصفوفة وفى هذة الحالة طبعا على سبيل المثال نريد إنشاء مصفوفة جديدة وليكن إسمها t :abc_012: لاحظ وضع فى الإعتبار أن هذة المجموعة جديدة ويمكنك إختيار أى إسم لها على حسب إختيارك
:abc_012: هنا طالما كانت المجموعة جديدة يجب الإعلان عنها أولا فيكون النتيجة :
t = {}
t[1] = "abood"
t[2] = "Haitham"
t[3] = "aziz"
t[4] = "khaled"
:abc_012: أيضا يرجى مراجعة ما ذكرتة عن المتغيرات لتتعرف على كتابة المصفوفة عن طريق المتغيرات ذات القيم و المدمجة مباشرة فى المصفوفة حتى لا نظل نعيد و نكرر ما تم شرحة مسبقا .
http://i.imgur.com/NfWIHC5.gif
مرحلة التعامل مع المصفوفات عن طريق الأكواد للتعديل على المصفوفة وإدخال عناصر جديدة و حذف عناصر
سوف يتم لاحقا من خلالة المتابعة لباقى الشروحات للسلسلة
http://i.imgur.com/NfWIHC5.gif
أكتفى بهذا القدر البسيط اليوم
:abc_138:يمكن تحميــل الشرح من المرفقات فقد تم تحويلة إلى كتـاب بى دى إف :abc_138:
http://i.imgur.com/2GnNEXz.gif
http://i.imgur.com/Nz3B0Vj.gif
http://i.imgur.com/emf2NIh.gif
ذكرنا سابقا أن المصفوفات أو الجداول هى عبارة عن مجموعة أزواج من المفاتيح و القيم
وبناءا على ذلك فإن لو أن هناك زوج من المفاتيح و القيم مثل الجدول التالى للتوضيح :
t = {a = "123"}
فإن تفصيل تعريف الجدول السابق أو المصفوفة السابقة تفصيلا دقيقا فيكون كالتالى :
t هى إسم المصفوفة التى نعمل عليها الآن
{ و } علامات الأقواس الكبيرة التى ترمز إلى المصفوفة
المتغير الذى إسمة a هو المفتاح الذى عن طريقة يمكننا الوصول إلى القيمة المخزنة فية أو قيمتة
"123" هو القيمة الموضوعة و المعبرة عن المتغير a
ككل تسمى قيمة و مفتاح a = "123"
إذن وبناءا على الجدول السابق أو المصفوفة السابقة فإننا قلنا سابقا أن هناك طريقتان للإستدعاء حيث وجود متغير إسمة a
ذكرنا أنة يمكن أن يكون الإستدعاء هكذا :
t.a
أو
t["a"]
:abc_012: أعتقد بهذا التوضيح تم معرفة القيمة و المفتاح للإستدعاء
http://i.imgur.com/NfWIHC5.gif
نأخذ على سبيل التطوير و التقدم فى بناء جدول أو مصفوفة " فكلا التعبيرين صحيحين " يحتوى على عدد من العناصر و ليكن 4 عناصر على سبيل المثال يكون شكل الجدول كالآتى :
t = {"abood", "Haitham", "aziz", "khaled"}
:abc_087: من خلال النظرة العامة المباشرة على المصفوفة السابقة نجد أن :
abood هو رقم 1 فى المصفوفة t
Haitham هو رقم 2 فى المصفوفة t
aziz هو رقم 3 فى المصفوفة t
khaled هو رقم 4 فى المصفوفة t
إذن هذة المصفوفة السابقة هى مصفوفة بسيطة جدا حيث لا يوجد بها أى متغيرات فهى ثابتة فى القيم و ثابتة فى المفاتيح
إذن يمكننا أن نتعامل معها مباشرة للحصول على القيم التى بداخلها فيكون للحصول على القيمة الأولى فى هذة المصفوفة
فــــ بالتالى سنحصل على abood فإننا نكتب :
t[1]
وللحصول على القيمة الثانية فى المصفوفة t السابقة
فــــ بالتالى سنحصل على Haitham فإننا نكتب :
t[2]
وللحصول على القيمة الثالثة فى المصفوفة t السابقة
فــــ بالتالى سنحصل على aziz فإننا نكتب :
t[3]
وللحصول على القيمة الرابعة فى المصفوفة t السابقة
فــــ بالتالى سنحصل على khaled فإننا نكتب :
t[4]
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {"abood", "Haitham", "aziz", "khaled"}
Dialog.Message("Number 1", t[1], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t[2], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t[3], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t[4], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
http://i.imgur.com/NfWIHC5.gif
نأخذ على سبيل التطوير و التقدم فى بناء جدول أو مصفوفة " فكلا التعبيرين صحيحين " يحتوى على عدد من العناصر و ليكن 4 عناصر على سبيل المثال ولكن كل عنصر لة متغير معبر عنة يكون شكل الجدول كالآتى :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
:abc_012: ذكرنا سابقا أن المتغير هو المفتاح للوصول إلى القيمة
وبالتالى للوصول إلى القيمة abood فإننا يجب أن نعرف أن المفتاح هو a
وبالتالى للوصول إلى القيمة Haitham فإننا يجب أن نعرف أن المفتاح هو b
وبالتالى للوصول إلى القيمة aziz فإننا يجب أن نعرف أن المفتاح هو c
وبالتالى للوصول إلى القيمة khaled فإننا يجب أن نعرف أن المفتاح هو d
:abc_012: وذكرنا أيضا عند وجود متغيرات يكون التعامل بطريقتين أحدهما كانت :
الطريقة الأولى :
المفتاح و علامة نقطة . و إسم المصفوفة
وبالتالى للوصول إلى القيمة abood فنكتب t.a
وبالتالى للوصول إلى القيمة Haitham فنكتب t.b
وبالتالى للوصول إلى القيمة aziz فنكتب t.c
وبالتالى للوصول إلى القيمة khaled فنكتب t.d
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
Dialog.Message("Number 1", t.a, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t.b, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t.c, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t.d, MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
الطريقة الثانية :
غلق القوس المربع و وضع المفتاح داخل علامتى تنصيص و فتح قوس مربع و إسم المصفوفة
وبالتالى للوصول إلى القيمة abood فنكتب :
t["a"]
وبالتالى للوصول إلى القيمة Haitham فنكتب :
t["b"]
وبالتالى للوصول إلى القيمة aziz فنكتب :
t["c"]
وبالتالى للوصول إلى القيمة khaled فنكتب :
t["d"]
:abc_012: تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :
t = {a = "abood", b = "Haitham", c = "aziz", d = "khaled"}
Dialog.Message("Number 1", t["a"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 2", t["b"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 3", t["c"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
Dialog.Message("Number 4", t["d"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
http://i.imgur.com/NfWIHC5.gif
إذن الخلاصة مما سبق هل يمكن وضع الأرقام مباشرة فى المصفوفة أو أى مصفوفة بدون إستخدام علامة تنصيص ؟
نعم يمكن
مثال على ذلك
t = {1, 2, 3, 4}
أو يمكن أن تكون المصفوفة كالتالى :
t = {"1", "2", "3", "4"}
:abc_012: وهل هذا الكلام يطبق أيضا على الحروف ؟ هل يمكن أن تكتب الحروف بداخل المصفوفة بدون علامة التنصيص ؟
الإجابة لا و نعم أيضا
كيف لا مثال على ذلك :
t = {a, b, c, d}
:abc_012: هل فى المصفوفة السابقة يمكن إستدعاء عناصرها ؟ لا يمكن
:abc_012: طيب أنت قلت فى نفس الوقت نعم فكيف يتم ذلك ؟
يتم ذلك إذا تم معرفة قيمة كل حرف من الحروف الموجودة داخل المصفوفة t :abc_088:
:abc_012: إذن ما تم وضعة فى المصفوفة ليست حروف ثابتة القيم ولكنها الآن متغيرات
:abc_138: إذن يعرف المتغير على أنة قيمة غير ثابتة أو غير محددة إلا بتحديد مسبق
:abc_113: إذن لتعديل المصفوفة و كتابتها بالطريقة الصحيحة ندخل قيم معروفة للمتغيرات السابقة كإعلان عن كل قيمة على حدى كمثال يكون كالآتى :
a = "a"
b = "b"
c = "c"
d = "d"
t = {a, b, c, d}
وبعد ذلك يمكن الحصول على قيم المصفوفة بدون أخطاء وذلك على حسب ترتيب العناصر فى المجموعة فيكون :
معبر عن قيمة المتغير الأول t[1]
وهكذااااااااااااا
http://i.imgur.com/NfWIHC5.gif
كود أكثر تعقيدا كبناء على ما تم شرحة مسبقا :
f = {c = {b="hazem" , f="ali" , r="khaled"}, d={k="hazem2" , h="ali2" , q="khaled2"}, e={z="hazem3" , x="ali3" , v="khaled3"}}
Dialog.Message("Notice", f["d"]["q"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
f هى حاملة مصفوفات و بها 3 مصفوفات c و d و e
و بكل مصفوفة من الثلاثة مصفوفات يوجد 3 عناصر
هنا سنستدعى العنصر q من المصفوفة d التابعة للمصفوفة f
:abc_012: كان هذا هو رد من تطبيق الأخ خالد " النصل القاطع " بناءا على ما تم شرحة مسبقا
http://i.imgur.com/NfWIHC5.gif
مرحلة كتابة المصفوفات
يمكن كتابة المصفوفات عن طريق الكتابة المباشرة ككتابة المصفوفة بشكل كامل فى سطر واحد مثلا كالآتى :
t = {"abood", "Haitham", "aziz", "khaled"}
أو بطريقة المفاتيح أى بترتيب العناصر داخل المجموعة أو المصفوفة وفى هذة الحالة طبعا على سبيل المثال نريد إنشاء مصفوفة جديدة وليكن إسمها t :abc_012: لاحظ وضع فى الإعتبار أن هذة المجموعة جديدة ويمكنك إختيار أى إسم لها على حسب إختيارك
:abc_012: هنا طالما كانت المجموعة جديدة يجب الإعلان عنها أولا فيكون النتيجة :
t = {}
t[1] = "abood"
t[2] = "Haitham"
t[3] = "aziz"
t[4] = "khaled"
:abc_012: أيضا يرجى مراجعة ما ذكرتة عن المتغيرات لتتعرف على كتابة المصفوفة عن طريق المتغيرات ذات القيم و المدمجة مباشرة فى المصفوفة حتى لا نظل نعيد و نكرر ما تم شرحة مسبقا .
http://i.imgur.com/NfWIHC5.gif
مرحلة التعامل مع المصفوفات عن طريق الأكواد للتعديل على المصفوفة وإدخال عناصر جديدة و حذف عناصر
سوف يتم لاحقا من خلالة المتابعة لباقى الشروحات للسلسلة
http://i.imgur.com/NfWIHC5.gif
أكتفى بهذا القدر البسيط اليوم
:abc_138:يمكن تحميــل الشرح من المرفقات فقد تم تحويلة إلى كتـاب بى دى إف :abc_138:
http://i.imgur.com/2GnNEXz.gif
http://i.imgur.com/Nz3B0Vj.gif