أخر المقالات
تحميل...

الخميس، 12 مارس 2015

الدرس الثاني عشر : دورة تعلم لغة البرمجة C

أهلاً وسهلاً بكم في الدرس الثاني عشر من دورة تعلم لغة C . بعد أن تم البدء بموضوع التكرار وتم شرح بعض جمل التكرار ( جملة while وجملة for  ) سنقوم في هذا الدرس بشرح جملة ثالثة تستعمل للتكرار وهي من الجمل المفيدة والكثيرة الاستخدام وهي جملة ( do ... while ) بالاضافة الى إننا سنكمل كل الامور المتعلقة بموضوع التكرار .
نبدأ الدرس :

do .. while 

الصيغة العامة لإستخدام هذه الجملة هي :
do
 { 
statement(s) ;
 } while( condition ) ;

والمخطط التالي يوضح عمل هذه الجملة :

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

وهذا برنامج بسيط بلغة C لتوضيح فكرة عمل هذه الجملة ( وهو نفسه البرنامج في الدرسين السابقين لكي نوضح الفرق بين استخدام الجمل الثلاثة في التكرار ) .




نلاحظ إن نتيجة التنفيذ هي نفسها في الثلاث برامج وأنت مخير في استخدامك لجمل التكرار حسب فهمك لها . والمزيد من الامثلة البرمجية تأتيكم في الدرسين القادمين  ( دروس أفكار وتطبيقات ) .

ننتقل الى موضوع أخر وهو :

nested loops in C
تعلمنا في الدروس السابقة في موضوع ( إتخاذ القرار ) إن كلمة nested تعني التداخل وهنا أيضا فهي بنفس المعنى حيث توفر لنا لغة C إمكانية عمل تكرار متداخل أي أن تأتي جملة التكرار بداخل جملة تكرار اخرى . وهي خاصية غاية في الاهمية وخاصة في موضوع المصفوفات ذات البعدين والتي سنتطرق لها في الدروس القادمة .
الصيغة العامة للتكرار المتداخل تكون كالتالي :

ننتقل الى موضوع أخر وهو :

infinite loop
قد تلاحظ أحياناً أثناء دراستك او إذا صادفت سورس كود لبرامج بلغة C أن تأتي جملة for بالصيغة التالية :
for (  ;  ; )

إذا صادفتك هذه الحالة لاتستغرب وتذكر هذا الدرس .
إن هذه الحالة تسمى بالتكرار اللانهائي 
infinite loop والمقصود بالتكرار اللانهائي إن البرنامج او الجملة تبقى تتكرر الى مالانهاية من عدد المرات وهذا يحدث عندما تكون قيمة الشرط صحيحة دائما ولاتبقى false أبداً . وهنا في هذه الحالة لايوجد شرط من الاساس أي إن القيمة صحيحة دائما .
وهذا مثال برمجي بسيط لهذه الحالة :


ستلاحظ إن البرنامج يستمر بالتكرار ولايتوقف . أما طريقة ايقاف هكذا برامج فتكون بالضغط على ctrl + c من لوحة المقاتيح .
سننتقل الان الى الجزء الأخير من درسنا لهذا اليوم والذي سنختم به درسنا وسنختم به موضوع التكرار . في هذه الجزء سنعرفكم ببعض الجمل المهة والتي تستعمل ضمنيا ضمن جمل التكرار .
1- break
هي كلمة محجوزة في اللغة وتعتبر واحدة من جمل السيطرة ( control ) تستخدم لإيقاف التكرار عند نقطة معينة وعند تحقق شرط معين .

وهذا مثال للإستخدام هذه الجملة :

نلاحظ في البرنامج اعلاه كيفية إستخدام كلمة break حيث إن البرنامج في الاساس يقوم بالعد تصاعدياً من صفر الى تسعة ولكن إستخدمنا شرطاً و break  لإيقاف العد عند وصول قيمة المتغير للرقم خمسة .
2- continue
وهي كلمة محجوزة ايضا تستخدام دائما داخل حلقات التكرار حيث تقوم بالرجوع الى بداية حلقة التكرار بدون إكمال مابعدها من أوامر .
وهذا مثال برمجي لإستخدامها :



3- goto 

وهي جملة تسمى بجملة ( القفز الغير المشروط ) unconditional jump وتستخدم للتنقل من مكان الى أخر ومن سطر الى سطر أخر في البرنامج ولايفضل استخدامها كثيرا في البرنامج والمبرمج المحترف لايستخدمها نهائياً لانها لاتجعل البرنامج هيكلياً .
أما الصيغة العامة لها فهي : 
goto lable ;


وليس شرطا أن يكون السطر المراد الانتقال له بإسم lable حيث يمكن استخدام اي إسم تعريفي .
مثال لاستخدام هذه الجملة :



نلاحظ في البرنامج اعلاه لدينا 6 جمل للطباعة وبعد الجملة الاولى قمنا بإستخدام أداة goto للانتقال الى المسمى aaa والذي عرفناه في أخر جملة وقد لاحظنا في نتيجة التنفيذ إن البرنامج تجاوز الاربع جمل وانتقل مباشرة الى الجملة الاخيرة .
هذه فكرة الاداة goto أي الانتقال من جزء الى اخر ومن مكان الى اخر في البرنامج حسب المسمى التعريفي الذي نضعه .

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

شاركها مع أصدقائك!
تابعني →
شارك! →

0 التعليقات :

إرسال تعليق