إعلان
دورة تطوير التطبيقات باستخدام لغة JavaScript في هذه الدورة ستتعلم لغة جافا سكريبت, استخدام مكتبة React.js, بناء API الموقع بواسطة Node.js, تطوير تطبيق جوال باستخدام React Native, و في نهاية الدورة ستتعلم تطوير تطبيق محادثة شبيه بتطبيق WhatsApp. تعلم الآن
دورة تطوير واجهات المستخدم في هذه الدورة ستتعلم لغة HTML و لغة CSS و لغة JavaScript. من ناحية التطبيق العملي ستتعلم طريقة بناء واجهة متجر إلكتروني مكون من ست صفحات, تحويل خمسة تصاميم PSD إلى صفحات ويب, بناء واجهة مستخدم تشبه موقع يوتيوب, بناء لوحة تحكم إحترافية. تعلم الآن
تطوير تطبيقات باستخدام لغة بايثون في هذه الدورة ستتعلم أساسيات البرمجة بلغة بايثون وصولاً إلى التعامل مع أشهر أطر العمل (Flask و Django) و ستتعلم كيف تبني متجر إلكتروني يمكن للمستخدمين البيع و الشراء من خلاله. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة PHP في هذه الدورة ستتعلم لغة PHP من الصفر, استخدام إطار العمل Laravel بشرح مفصّل و عملي, كيفية تطوير شبكة اجتماعية تشبه Instagram, بناء API لتطبيق جوال وفق أسلوب RESTful, تطوير موقع إعلانات مبوبة, تطوير نظام إدارة محتوى CMS كامل. تعلم الآن
دورة تطوير تطبيقات الويب باستخدام لغة Ruby في هذه الدورة ستتعلم البرمجة بلغة Ruby إنطلاقاً من أبسط المفاهيم وحتى بناء تطبيق حقيقي, إستخدام إطار العمل Ruby on Rails بشرح مفصّل و عملي, بناء تطبيق حقيقي عبارة عن شبكة اجتماعية تشبه تويتر, تطوير مجتمع الكتروني يشبه حسوب I/O. تعلم الآن
دورة علوم الحاسوب هذه الدورة معدة لتكون مدخل لعلوم الحاسوب و لغات البرمجة حيث ستتعرف فيها على أنظمة التشغيل و ستتعمق في نظام لينكس و في كيفية التعامل معه من خلال موجه الأوامر, بالإضافة إلى قواعد البيانات و أساسيات الشبكات و الخوادم و مبادئ الحماية والأمان في الويب. تعلم الآن

    الخوارزميات التعامل مع المصفوفات ذات البعدين

    المبادئ التي عليك اتباعها أو تقليدها مع المصفوفات ذات البعدين

    تذكر المبادئ التالية في كل مرة تتعامل فيها مع مصفوفة ذات بعدين:

    • إستخدم حلقتين for متداخلتين في حال أردت الوصول لجميع عناصر المصفوفة.
    • الحلقة التي تجعلك تنتقل من سطر لآخر قم بتسمية العداد فيها i و إجعلها تبدأ من 0 إلى عدد الأسطر فيها ناقص 1.
    • الحلقة التي تجعلك تنتقل من عامود لآخر قم بتسمية العداد فيها j و إجعلها تبدأ من 0 إلى عدد الأعمدة فيها ناقص 1.
    • إستخدم الرمز \t في حال كنت تريد عرض عناصر المصفوفة كجدول لأنه يضع مسافات فارغة بشكل تلقائي بين كل قيمتين على نفس السطر.
    • إستخدم الحلقة while أو do while في حال لم تكن تريد الوصول لجميع عناصر المصفوفة.
    • إستخدم الحلقة do while في حال كنت تريد جعل المستخدم يدخل قيمة تستوفي شرط معين.

    ستفهم كل هذه المبادئ من التمارين.



    طريقة الوصول إلى قيم عناصر المصفوفة سطراً - سطراً أو عاموداً - عاموداً

    • في حال أردت الوصول إلى عناصر المصفوفة سطراً سطراً, عليك جعل الحلقة الخارجية تنتقل من سطر لآخر و الحلقة الداخلية تنتقل من عامود لآخر.
    • في حال أردت الوصول إلى عناصر المصفوفة عاموداً عاموداً, عليك جعل الحلقة الخارجية تنتقل من عامود لآخر و الحلقة الداخلية تنتقل من سطر لآخر.

    المثال التالي يوضح كيف تعرّف الحلقتين i و j في حال كنت تريد التنقل في المصفوفة سطراً - سطراً أو عاموداً - عاموداً.

    كود الجافا

    public class Matrix {
     
        public static void main (String[] args) {
     
            // قمنا بتعريف مصفوفة تتألف من 3 أسطر و 3 أعمدة
            int[][] matrix = {
                                {1, 2, 3},
                                {4, 5, 6},
                                {7, 8, 9}
                             };
     
     
            // هنا قمنا بعرض القيم الموجودة في كل سطر في المصفوفة
            for (int i=0; i<3; i++)
            {
                System.out.print("Row ["+i+"] values: ");
                for (int j=0; j<3; j++)
                {
                    System.out.print( matrix[i][j] + " " );
                }
                System.out.print( "\n" );
            }
     
     
            System.out.print( "\n" );
     
     
            // هنا قمنا بعرض القيم الموجودة في كل جدول في المصفوفة
            for (int j=0; j<3; j++)
            {
                System.out.print("Column ["+j+"] values: ");
                for (int i=0; i<3; i++)
                {
                    System.out.print( matrix[i][j] + " " );
                }
                System.out.print( "\n" );
            }
     
     
        }
     
    }
    		

    نتيجة التشغيل


    تذكر

    يمكنك دائماً كتابة الكود بأكثر من طريقة و الحصول على نفس النتيجة.
    بمعنى أخر, يوجد طريقة أخرى للتنقل بين عناصر المصفوفة غير التلاعب بأمكان الحلقات i و j.
    الطريقة الأخرى ستتعلمها من التمارين الموضوعة ضمن هذا الدرس.

    تمارين شاملة حول المصفوفات ذات البعدين


    التمرين الأول

    1. أكتب برنامج يطلب من المستخدم إعطائه عددين, العدد الأول يمثل عدد أسطر مصفوفة ذات بعدين إسمها matrix و العدد الثاني يمثل عدد أعمدتها.
      خزن العدد الأول في متغير إسمه a و العدد الثاني في متغير إسمه b.
      إنتبه: يجب أن يدخل المستخدم عددين أكبر من صفر, لأن عدد عناصر المصفوفة لا يمكن أن يكون صفر أو أقل من صفر.
    2. ثم يطلب من المستخدم إدخال قيمة لكل عنصر من عناصر المصفوفة matrix.
    3. ثم يعرض له جميع قيم عناصر المصفوفة matrix.

    الحل و التفسير »



    التمرين الثاني

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم ناتج جمع جميع قيم عناصرها.

    الحل و التفسير »



    التمرين الثالث

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم ناتج جمع قيم العناصر الموجودة في كل سطر فيها.

    الحل و التفسير »



    التمرين الرابع

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم ناتج جمع قيم العناصر الموجودة في كل عامود فيها.

    الحل و التفسير »



    التمرين الخامس

    أكتب نفس البرنامج السابق بطريقة أخرى. إذاً إفعل التالي:

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم ناتج جمع قيم العناصر الموجودة في كل عامود فيها.

    الحل و التفسير »



    التمرين السادس

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 4 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
    4. ثم يقوم بتخزين جميع القيم الموجودة في المصفوفة matrix بداخل مصفوفة ذات بعد واحد, قم بتسميتها vector.
    5. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويهم المصفوفة vector على نفس السطر.

    الحل و التفسير »



    التمرين السابع

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 4 أسطر و 4 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
      إنتبه: نريد هذه المصفوفة أن تحتوي فقط على قيم أكبر أو تساوي صفر مثل 8, 5, 4, 43, 10.
    3. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
    4. بعدها يقوم بجمع قيم جميع العناصر الموجودة على الـ Diagonal, فوق الـ Diagonal, و تحت الـ Diagonal.
    5. في الأخير يعرض للمستخدم ناتج الجمع.

    الحل و التفسير »



    التمرين الثامن

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 5 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
    4. بعدها يطلب من المستخدم إدخال أي عدد ليرى كم مرة هذا العدد موجود في المصفوفة, و يخزنه في المتغير x.
    5. في الأخير يعرض للمستخدم ناتج عملية البحث, أي كم مرة وجد نفس قيمة المتغير x في المصفوفة matrix.

    الحل و التفسير »



    التمرين التاسع

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 5 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
    4. بعدها يطلب من المستخدم إدخال أي عدد ليرى إذا كان موجوداً في المصفوفة, و يخزنه في المتغير x.
      إنتبه: يكفي أن يعرف المستخدم إذا كان العدد الذي يبحث عنه موجوداً مرة واحدة في المصفوفة.
    5. في الأخير يعرض للمستخدم ناتج عملية البحث, أي إذا وجد نفس قيمة المتغير x في المصفوفة matrix أم لا.

    ملاحظة: قم بتعريف العدادين i و j مرة واحدة في بداية البرنامج.

    الحل و التفسير »



    التمرين العاشر

    1. أكتب برنامج يعرّف مصفوفة إسمها matrix تتألف من 3 أسطر و 3 أعمدة.
    2. ثم يطلب من المستخدم إدخال قيم لها.
    3. ثم يعرض للمستخدم جميع القيم التي أصبحت تحتويها المصفوفة.
    4. بعدها يقوم بجمع قيم العناصر الموجودة في كل سطر, و يخزن ناتج الجمع في مصفوفة ذات بعد واحد إسمها vector.
    5. في الأخير يعرض للمستخدم القيم التي أصبحت تحتويها المصفوفة vector.

    ملاحظة: قم بتعريف العدادين i و j مرة واحدة في بداية البرنامج.

    الحل و التفسير »

    إعلان

    Eqla3Tech.com

    شروحات مكتوبة حول لغات البرمجة و تقنية المعلومات باللغة العربية مقدمة من إقلاع تك.

    لغة جافا لغة ++C قواعد البيانات نظام ويندوز نظام لينكس الشبكات تقنية المعلومات الأمن السيبراني

    الدورات

    أدوات مساعدة

    الأقسام

    دورات
    مقالات أسئلة مشاريع كتب