إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

سلسلة شروحات الأكشن سكريبت رقم 2 المصفوفات جزء أول

تقليص
هذا الموضوع مغلق.
X
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • سلسلة شروحات الأكشن سكريبت رقم 2 المصفوفات جزء أول





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


    المصفوفات

    هى مجرد حاوية لتخزين قيم قد تكون نصية أو رقمية وهى عبارة عن مجموعة أزواج من المفاتيح و القيم موضوعة داخل مجموعات صغيرة والتى تعرف بـــ associative arrays والتى تمثل بقوسين صغيرين كـمثال ([1])
    وتكون رمز المصفوفات بعلامة القوسين الكبيرين {}
    وتمكن من وضع المجموعات الصغيرة فيها حيث يسهل بعد ذلك الوصول إلى أى مجموعة منها من خلال وضع المفاتيح أو القيم لها



    كيفية كتابة مصفوفة أو كيفية الإعلان عن مصفوفة


    يتم الإعلان عن المصفوفة عن طريق وضع متغير يعبر عنها لتسهيل التعامل معها فمثلا هنا سوف أكتب متغير إسمة F وذلك للتعبير عنها فتكون المصفوفة كالتالى :
    كود PHP:
    = {} 
    هنا أعلنت عن إسم المصفوفة بحرف F وقمت بفتح القوسين الكبيرين و المعبرين عن المحتويات للمصفوفة
    ونلاحظ أن بداخل الأقواس فارغة و لم يوضع أى شيئ
    وعندما ندرج عناصر داخل المجموعة يتم ذلك بثلاث طرق
    الطريقة الأولى هى طريقة النصوص
    الطريقة الثانية هى طريقة المفاتيح
    الطريقة الثالثة هى طريقة الدمج نصوص و مفاتيح


    سوف أقوم بشرح الطرق كالآتى بالتدريج و بدون تمييزها و ترك المجال للقارئ لإستيعاب الطرق من خلال قدرتة على التمييز لما أريد أن أشير إلية بالشرح :


    على سبيل المثال نريد أن ندرج نص داخل المجموعة أو المصفوفة F
    هنا لابد من كتابة النص داخل علامة تنصيص إما علامة تنصيص فردية ' أو علامة تنصيص زوجية "
    فعلى سبيل المثال نريد إدخال نص وليكن abood داخل المجموعة F فتكون النتيجة للكتابة كالتالى :
    كود PHP:
    = {"abood"

    أو

    كود PHP:
    = {'abood'

    إلى هنا تم إدراج الإسم أو النص عبود داخل المصفوفة إف
    طيب إذا قلنا سابقا أن المصفوفة تحتوى على مجموعة من مفاتيح وقيم إذا المصفوفة لها عدد مكون لها .
    من المعروف أن المصفوفة تبدأ من اليسار إلى اليمين إذا كم عنصر تم إدراجة إلى الآن فى المصفوفة ؟
    تم إدراج عنصر واحد فقط فى المجموعة و كان عبارة عن نص فما هو ترتيب هذا العنصر ؟
    ترتيب العنصر السابق كان رقم 1 فى المجموعة F
    كيف سيتم إستدعاء هذا العنصر من داخل المجموعة أو المصفوفة ؟
    سوف يتم إستدعاء هذا العنصر من داخل المجموعة أو المصفوفة وذلك بمعرفة إسم المجموعة و ترتيب العنصر فى المجموعة
    فيكون كالتالى :

    كود PHP:
    [1


    تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :


    كود PHP:
    --

    = {"abood"}

    Dialog.Message("Notice"f[1], MB_OKMB_ICONINFORMATIONMB_DEFBUTTON1); 

    أو


    كود PHP:
    --

    = {'abood'}

    Dialog.Message("Notice"f[1], MB_OKMB_ICONINFORMATIONMB_DEFBUTTON1); 


    إذن فيما سبق قمنا بإدراج نص فى مجموعة فهل يمكن أن ندرج متغير فى مجموعة أو المصفوفة ؟
    فعلى سبيل المثال لدينا متغير c وهذا المتغير يساوى نص فكيف يتم إدراجة فى المجموعة أو المصفوفة ؟
    فمثلا كان لدينا :


    كود PHP:
    "hazem" 

    ووضعا هذا فى المصفوف فكان كالتالى :


    كود PHP:
    = {"hazem"

    كيف نقوم بإستدعاء قيمة المتغير c من داخل المجموعة F ?
    هنا سوف نستخدم علامة النقطة . لتنفيذ هذة المهمة فتكون نتيجة الإستدعاء لقيمة المتغير c كالتالى :


    إسم المصفوفة F و علامة نقطة . و إسم المتغير c


    فتكون النتيجة النهائية عند الإستدعاء كالتالى :


    كود PHP:
    f.


    تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :


    كود PHP:
    --

    = {"hazem"}

    Dialog.Message("Notice"f.cMB_OKMB_ICONINFORMATIONMB_DEFBUTTON1); 


    إذا قلنا أن إستدعاء قيمة المتغير c تكتب هكذا [f[1 هل هذا سوف يكون صحيح ؟ إقتداءا بالمثال الأول حيث المتغير c هو يعتبر رقم 1 فى المجموعة أو المصفوفة f ؟

    طبعا خطـــــأ ولا يمكن ذلك . :abc_086:

    إذا قلنا أن إستدعاء قيمة المتغير c تكتب هكذا [f[c هل هذا سوف يكون صحيح ؟ إقتداءا بالمثال الأول حيث المتغير c هو يعتبر رقم 1 فى المجموعة أو المصفوفة f ؟

    طبعا خطـــــأ ولا يمكن ذلك . :abc_086:



    برجاء القراءة بعناية فكل ما أكتبة أقصدة بالفعل فهناك إختلاف كبير بين [f[1 و [f[c .


    فــــ [f[1 يصلح للإستدعاء فى حالة عدم وجود متغيرات للعنصر كما سبق فى الشرح .
    أما [f[c فكيف سيميز مترجم البرنامج حرف الـــ c ? لن يستطيع .


    طيــــب هل هناك طريقة أخرى لإستخراج قيمة المتغير c من المصفوفة f ؟
    نعم سوف ندرج المتغير c بين علامتى تنصيص مع العلم تماما أنة متغير هههههه كما أشرنا
    وبعد إدراج علامتى التنصيص للمتغير c سوف يكون أو تكون القراءة صحيحة فيكون نتيجة الإستدعاء كالتالى :



    كود PHP:
    f["c"

    تطبيق عملى على المثال السابق إفتح مشروع وقم بوضع الكود التالى و المعبر عن المجموعة و رسالة لإظهار النتيجة و قم بالمعاينة :


    كود PHP:
    --

    = {"hazem"}

    Dialog.Message("Notice"f["c"], MB_OKMB_ICONINFORMATIONMB_DEFBUTTON1); 


    طبعا بالنسبة لإدخال الأرقام فى المصفوفة لا مشكلة و لا يلزم إدراج علامة التنصيص

    لنا عودة مرة أخرى لتعقيد المصفوفة تدريجيا حتى نفهمها جيدا ولا ننساها ولا تسبب لنا أى مشكلة فى إستيعابها





    أكتفى بهذا القدر البسيط اليوم

    يمكن تحميــل الشرح من المرفقات فقد تم تحويلة إلى كتـاب بى دى إف


    الملفات المرفقة
    التعديل الأخير تم بواسطة عبود عبود; الساعة 16-02-2016, 10:30 PM. سبب آخر: تعديل لنقل صور الشرح على سيرفر مناسب وجيد للظهور بالشكل السليم

  • #2
    راااااااااااااااااااااااا اااااائع يا استاذ عبود ولك جزيل الشكر

    تعليق


    • #3
      بسم الله الرحمن الرحيم

      بارك الله فيكم استاذ عبود
      شرح مميز ومنسق

      وفقكم الله في مسعاكم

      تعليق


      • #4
        ممتاز أخى عبود

        [html]f = {c = "hazem"}

        Dialog.Message("Notice", f["c"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); [/html]

        هذه جديدة
        أقصد new

        تعليق


        • #5
          جزاك الله الخير كله
          شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية . شـكــ وبارك الله فيك ـــرا لك ... لك مني أجمل تحية .
          موفق بإذن الله ... لك مني أجمل تحية . موفق بإذن الله ... لك مني أجمل تحية .
          في انتظار ماتبقى
          الف شكر

          تعليق


          • #6
            المشاركة الأصلية بواسطة النصل القاطع مشاهدة المشاركة
            ممتاز أخى عبود

            [html]f = {c = "hazem"}

            Dialog.Message("Notice", f["c"], MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1); [/html]

            هذه جديدة
            أقصد new

            أكيــــــــد مش قلنا الشرح بالتفصيل الممل يبقى لازم هناك خفايا بمثابة أسرار وغير مرئية عبر المرور السريع و عدم التركيز

            تعليق


            • #7
              المشاركة الأصلية بواسطة azizsoft مشاهدة المشاركة
              بسم الله الرحمن الرحيم

              بارك الله فيكم استاذ عبود
              شرح مميز ومنسق

              وفقكم الله في مسعاكم
              بارك الله لك أخى عزيز

              تعليق


              • #8
                ما شاء الله عليك اخي الامير ... وكما قال استاذي العزيز " النصل القاطع " فعلا نقطه جديده

                شكرا لك

                تعليق


                • #9
                  شكرا لمرورك الجميــــــــــل أخى هيثم ............. جزاك الله خيـــــــــرا

                  أتمنى أن أستطيع أن أقـــــــدم جزء بسيــــــــط مما قد يفيــــــد ويسهـــــــل الأمور على الآخرين

                  بالتوفيق لنـــــــــا جميعــــــــــــا

                  تعليق


                  • #10
                    جزيل الشكر لك اخانا عبود ، وما شاء الله الكل يتفاعل

                    .

                    تعليق


                    • #11
                      كبناء على الكود السابق

                      [html]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);[/html]
                      f هى حاملة مصفوفات و بها 3 مصفوفات
                      c و d و e
                      و بكل مصفوفة من الثلاثة مصفوفات يوجد 3 عناصر

                      هنا سنستدعى العنصر q من المصفوفة d التابعة للمصفوفة f

                      واحدة بواحدة
                      خالصين ؟؟

                      تعليق


                      • #12
                        غالبا لا نحتاج للإعلان عن المصفوفة بالقوسين الفارغين إلا فى حالة ملئها عن طريق حلقة
                        فيجب الإعلان عنها قبل الحلقة

                        يستخدم الإعلان لغرضين
                        إما الإعلان عن المصفوفة أو تفريغ المصفوفة من محتوياتها

                        ففى مثالى السابق
                        كود PHP:
                        = {= {b="hazem" f="ali" r="khaled"}, d={k="hazem2" h="ali2" q="khaled2"}, e={z="hazem3" x="ali3" v="khaled3"}} 
                        فإن وضع الكود
                        كود PHP:
                        f={} 
                        فى أى مكان لاحق لكود الإنشاء
                        يؤدى فورا لتحويل f لمصفوفة فارغة

                        أنا هنا أعتمد أسلوب المناقشة
                        لو تريد إكمال الموضوع بدون تدخل فقط خبرنى

                        تعليق


                        • #13
                          المشاركة الأصلية بواسطة النصل القاطع مشاهدة المشاركة
                          غالبا لا نحتاج للإعلان عن المصفوفة بالقوسين الفارغين إلا فى حالة ملئها عن طريق حلقة
                          فيجب الإعلان عنها قبل الحلقة

                          يستخدم الإعلان لغرضين
                          إما الإعلان عن المصفوفة أو تفريغ المصفوفة من محتوياتها

                          يبدو أنك فهمتنى خطأ

                          لقد وضحت للقارئ فقط معنى المصفوفة كشكلا و كإسما ثم قلت كيف يكون شكلها عندما تكون فارغة و عندما يدرج فيها عناصر

                          وتدرجت فيها كعنصر واحد فقط عندما يكون نصى و عندما يكون متغير ولمحت لطريقتها مع العناصر الرقمية


                          أما عن المصفوفة التى وضعتها أنت فكان من المقرر لها فى الجزء الثانى حيث قلت أننا سوف نعقد الأمور تدريجيا
                          و إنت كدة حرقت اللى أنا كنت هقوم بية هههههههه :abc_086:

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

                          فلا يهمنى من فينا سوف يصل للمعلومة أولا ولكن يهمنى من سيوصل المعلومة للآخرين بمستوياتهم المبتدئة

                          أتمنى أن لا نقطع النقاش و بخاصة فى العلم مهما كانت الأسباب .

                          الأسئلة كثيرة جدا جدا ولكن هل من مجيــــــب و بخاصة عند مراحل معينة يهمنا أن نعرف الكثير

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

                          تحياتى و تقديرى

                          تعليق


                          • #14
                            المشاركة الأصلية بواسطة عبود عبود مشاهدة المشاركة
                            يبدو أنك فهمتنى خطأ
                            كلا أخى بل فهمتك جيدا و شرحك ممتاز
                            فقط قصدت التنبيه على خطورة الإعلان عن مصفوفة غير فارغة فهذا يؤدى لتفريغها ( و هذا أيضا له ضرورة برمجية فى بعض الحالات)

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





                            وقت ما يحلو لك
                            أكمل حلقاتك يا بطل
                            و سيتم دمج الحلقات بالمشاركة الأولى فيما بعد

                            و لا تقلق
                            أنا دائما موجود للعطاء و لمساعدة من يرغب فى العطاء على العطاء

                            فقط إعلم أن المصفوفات من أخطر الكائنات البرمجية و لها العديد من الحيل و الأسرار

                            تقبل تحياتى

                            تعليق


                            • #15
                              Thaaaaanks

                              تعليق

                              مواضيع تهمك

                              تقليص

                              المنتدى: القسم العام نشرت بواسطة: Reem2Rabeh الوقت: 04-23-2025 الساعة 04:27 PM
                              المنتدى: ضبط وتوكيد الجودة نشرت بواسطة: HeaD Master الوقت: 04-15-2025 الساعة 09:30 AM
                              المنتدى: التصنيع والانتاج نشرت بواسطة: HeaD Master الوقت: 04-11-2025 الساعة 01:08 PM
                              المنتدى: القسم العام نشرت بواسطة: نوال الخطيب الوقت: 03-19-2025 الساعة 03:07 AM
                              المنتدى: الكمبيوتر والإنترنت نشرت بواسطة: عوض السوداني الوقت: 03-18-2025 الساعة 07:22 AM
                              يعمل...
                              X