إعلان
دورة تطوير التطبيقات باستخدام لغة 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

    مفهوم الحلقة for

    نستخدم الحلقة for لتنفيذ الكود نفسه عدد محدد من المرّات.
    فمثلاً إذا أردنا تنفيذ كود معين 5 مرات, نضعه بداخل حلقة تعيد نفسها 5 دورات.


    طريقة إستخدامها

    يجب أن تفهم معاني المصطلحات التالية لأنها مهمة في عالم البرمجة و لا تقلق إن لم تفهم معناها مباشرةً الآن لأنك ستفهمها لاحقاً عند مشاهدة الفيديوهات التي شرحنا فيها كيف تنفّذ الكود بدقة.

    for (initialisation; condition; increment أو decrement)
    {
        // statements
    }

    • initialisation :  هي أول خطوة تتنفذ في الحلقة و هي تتنفذ مرة واحدة فقط على عكس جميع الخطوات الموجودة في الحلقة.
      في هذه الخطوة نقوم بتعريف متغير (يسمى عدّاد) و يجب وضع بعده فاصلة منقوطة.

    • condition:   هي ثاني خطوة تتنفذ في الحلقة و هي تتنفذ في كل دورة.
      في هذه الخطوة نقوم بوضع شرط يحدد متى تتوقف الحلقة و نضع بعده فاصلة منقوطة. في كل دورة يتم التأكد أولاً إذا تحقق هذا الشرط أم لا, و طالما أن نتيجة الشرط تساوي true فهذا يعني أنه سيتم تكرار الكود.

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

    • decrement أو increment:   هي الخطوة الرابعة و الأخيرة, و هي تتنفذ في كل دورة.
      هنا نحدد كم تزداد أو تنقص قيمة العداد في نهاية كل دورة. و هنا لا يجب وضع فاصلة منقوطة بعدها.

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

    مثال حول الحلقة for

    في المثال التالي قمنا بتعريف حلقة تطبع كلمة Harmash على سطر منفرد 5 مرات.

    الكود

    for (var i=1; i<=5; i++)
    {
        write("Harmash\n");
    }
    		

    سنحصل على النتيجة التالية عند التشغيل.

    Harmash
    Harmash
    Harmash
    Harmash
    Harmash

    تجربة الكود


    شرح الكود

    الفيديو التالي يشرح طريقة عمل الحلقة for في المثال السابق خطوة خطوة.

    رموز مختصرة نستخدمها في الحلقات

    نستخدم في العادة العامل ++ في الحلقات عند زيادة قيمة المتغير واحداً كما رأيت في المثال السابق لأنه أسلوب مختصر و متعارف عليه و لكنك تستطيع إضافة 1 على قيمة المتغير بطرق أخرى إن أردت ذلك.

    إذاً سواء قمت بكتابة i++ أو i += 1 أو i = i + 1 فكل هذه الأساليب تعني أنك تريد إضافة 1 على قيمة المتغير i.

    بالنسبة للعامل -- فإننا نستخدمه كذلك مع الحلقات عند إنقاص قيمة المتغير واحداً و بالتالي سواء قمت بكتابة i-- أو i -= 1 أو i = i - 1 فكل هذه الأساليب تعني أنك تريد إنقاص 1 من قيمة المتغير i.


    ملاحظة

    العامل ++ و العامل -- موجودين في أغلب لغات البرمجة و لكن ليس في جميع اللغات, فعلى سبيل المثال ليسا موجودين في لغة بايثون و لكنها موجودين في معظم لغات البرمجة الأخرى المشهورة.

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

    تمارين حول الحلقة for


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

    بواسطة الحلقة for إطبع جميع الأرقام الموجودة من 1 إلى 5 مع إظهار كل رقم منهم على سطر منفرد.

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


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

    1. أطلب من المستخدم إدخال رقم و خزّنه في متغير إسمه n.
    2. بواسطة الحلقة for إطبع جميع الأرقام الموجودة من 1 إلى n مع إظهار كل رقم منهم على سطر منفرد.

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


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

    بواسطة الحلقة for إطبع جميع الأرقام الموجودة من 5 إلى 1 مع إظهار كل رقم منهم على سطر منفرد.

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


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

    1. أطلب من المستخدم إدخال رقم و خزّنه في متغير إسمه n.
    2. بواسطة الحلقة for إطبع جميع الأرقام الموجودة من n إلى 1 مع إظهار كل رقم منهم على سطر منفرد.

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


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

    1. عرّف متغير إسمه website قيمته "Harmash".
    2. إطبع قيمة هذا المتغير 3 مرات على نفس السطر مع وضع مسافة فارغة بينهم باستخدام الحلقة for.

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


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

    1. عرّف متغير إسمه website قيمته "Harmash".
    2. إطبع قيمة هذا المتغير 3 مرات على أسطر منفردة باستخدام الحلقة for.

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


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

    1. عرّف متغير إسمه website قيمته "Harmash".
    2. إطبع قيمة هذا المتغير 3 مرات على نفس السطر مع وضع فاصلة بينهم بإستخدام الحلقة for.

    ملاحظة: لا يجب أن تظهر فاصلة زيادة في الأخير.

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

    إعلان

    Eqla3Tech.com

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

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

    الدورات

    أدوات مساعدة

    الأقسام

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