رد جديد  مشاركة جديدة 
الدرس الخامس: عبارات التكرار
الكاتب الرسالة
Pepo
عضو مميز



المشاركات : 5,096
مجموعة : الاعضاء
الإنتساب : 30-12-2006
الحالة : غير متصل
السمعة : 37
الرد : #1
الدرس الخامس: عبارات التكرار

بسم الله الرحمن الرحيم

بسم الله الرحمن الرحيم

  • متطلبات قبل البدأ :
    • لا يوجد
  • اهداف الدرس :
    • عبارة التكرار WHILE
    • مثال تطبيقي


عبارة التكرار WHILE :

بعد ان عرفنا العبارات الشريطة وكيفية تحديد مسار برنامجنا , نأتي الان الى عبارات التكرار , وكما يدل اسمها , فإننا نكرر شيء معين ونقوم بتكراره وتكراره, واستخدام هذه العباره له فوائد عديده وكبيره , تخيل ان لديك كود معين وتلاحظ انك تقوم بكتابة هذا الكود اكثر من مره , لكي تصل الى هدف معين , فلماذا لا تختصر الوقت وتجعل الكود يقوم بتكرار نفسه الى حد معين تقوم انت بتحديده , الا يتعبر ذلك اسهل واوفر من ناحية الوقت والتنفيذ ؟ وايضا الجهد الذي ستقوم بتوفيره لاكواد اخرى. ان ذلك لا يعني ان عبارة التكرار سهله او يمكن عملها في لحظات , عبارة التكرار يجب ان تفهم جيدا قبل كتابتها و التفكير في كيفية عملها والناتج الذي نريد الخروج به من عملها. هل تريد مثلالا على ذلك لتوضيح الصوره ؟ تخيل في بقالتنا الالكترونيه المشتري يقوم بشراء اكثر من منتج , ولكي حسابها يجب ان نجمع جميع المنتجات مع بعضها البعض وحساب المبلغ الكلي اليس ذلك صحيحا ؟ سوف نقوم بحسابها بالطريقة التاليه ( المنتج الاول + المنتج الثاني + المنتج الثالث + المنتج الرابع ) سوف نقوم بجمع كل منتج واضافته الى المجموع الكلي لنحصل على الناتج الكلي , اليس ذلك صحيحا ؟ سوف نتعلم كيف استخدام عبارة التكرار هذه ونأخذ عليها امثله كافيه لكي تتضح لك الصوره . طريقة كتابة عبارة WHILE الشرطيه كالتالي



لنأخذ بعض الامثله على طريقة كتابة عبارة التكرار WHILE , تخيل انك تريد طباعة الارقام من 1 الى 5 , كم سطر سيتطلب من كتابته ؟ افتح محرر الاكواد وقم بكتابة كود يطبع من الرقم واحد الى الرقم 5 وقم بعدد الاسطر التي قمت بكتابتها , لاحظ الكود التالي :

لقد قمنا بكتابة 13 سطرا لكي نطبع من العدد 1 الى العدد 5 , تخيل لو اردنا الطباعه الى العدد 100 كم سطرا سيتطلب ذلك منا ؟ الا تظن ان ذلك سوف يتعبك بدنيا وعقليا !! وهنا تأتي فائدة عبارة التكرار WHILE لكي تساعدنا على تسهيل كتابة الكود , قم بمسح الكود السابق وانساه للابد وقم بكتابة الكود التالي ولاحظ الفرق :


كود PHP :
<?php
    $x 
1// بداية العدد
    //فى السطر التالى نشترط ان يكون المتغير اقل من او يساوى خمسة
    
while ($x <= 5)
    {
    echo 
$x// اطبع المتغير طلاما توفر فيه شرطنا
    
echo "<br>"// سطر جديد
    
echo $x++; // قم بزيادة المتغير واحد
    
}
?>


كم سطرا قمنا بكتابته الان ؟ من غير التعليقات فقط 7 اسطر , ومع التعليقات 8 اسطر , فرق 5 اسطر عن الكود السابق , الا يعتبر ذلك انجازا , واذا لم تقتنع حاول ان تقوم بكتابة الاعداد من 1 الى 100 من غير استخدام التكرار , ولكن مع التكرار الذي يمكنك فعله ان تقوم بتغير الشرط من اقل من او يساوي 5 الى اقل من يساوي 100 وسوف يأتيك ناتجك بنفس عدد الاسطر ال7 فقط. اذا لم تقم بفهم كود التكرار سوف اقوم بشرحه لك لكي تضح الصوره. اقرا بتركيز من هنا , اولا : قمنا بتعيين متغير توجد به القيمة 1 واسمه x وبعد ذلك نقوم بكتابة دالة التكرار وشرطها ان يكون المتغير x اقل من او يساوي 5 , ثم نقوم بطباغة المتغير الموجود لدينا , ونطبع سطر جديد للترتيب , واخيرا نقوم بزيادة المتغير بواحد ونرجع الى الاعلى لنرى هل الشرط صحيح ام لا , اذا كان صحيحا يقوم بفعل الطباعه مره اخرى واذا لم يكن صحيحا يقوم بالخروج من البرنامج.
لنقم بالتفكير كمترجم PHP ونقوم بعمل الكود سطرا سطرا , لاحظ التالي , المتغير x يساوي القيمه 1 , يوجد لدي عباره تكرار وداخلها شرط وهو ان يكون المتغير x اقل من ويساوي 5 , قيمة المتغير x هي واحد والشرط ان يكون اقل من خمسه هل تحقق الشرط ؟ نعم هو صحيح , اذن ادخل العباره وقم بطباعة المتغير x , اقفز سطرا , قم بزيادة المتغير x بواحد , اصبح الان المتغير x قيمته 2 , ارجع الى الشرط مره اخرى , هل المتغير x اقل من 5 ؟ المتغير هو 2 والشرط هو اقل من ويساوي 5 اذن قم بطباعة المتغير واقفز سطرا وزد المتغير واحد , اصبح الان المتغير x يساوي العدد 3 , ......................................... زد المتغير واحد , اصبح الان المتغير يساوي 6 , ارجع الى الشرط , هل المتغير اقل من او يساوي 5 ؟ لا لم يتحقق الشرط اذن قم بالخروج من الكود . ويمكنك خارج حلقة التكرار ان تقوم بطباعة العباره انتهينا لكي تعرف ان التنفيذ تم .
مثال تطبيقي :
سؤال سريع , ماهو ناتج جمع الاعداد من 1 الى 100 ؟ الجواب هو الكود التالي :


كود PHP :
<?php
    $x 
1;
    
$total 0;
    while (
$x <= 100)
    {
        
$total $total $x;
        
$x++;
    }
    echo 
"الناتج هو";
    echo 
"<br>";
    echo 
$total;
?>


حاول ان تقوم بقراءة الكود وحاول ان تفهمه جيدا وسوف توضح لك الصوره

ماذا لو اردنا ان نجمع الاعداد الزوجيه لوحدها والاعداد الفرديه لوحدها ؟؟ فكر كيف سنقوم بذلك , بسيط جدا Smile قم بإستخدام العباره الشرطيه IF داخل عبارة التكرار WHILE لاحظ التعديل على الكود وسوف تعرف الطريقه :



كود PHP :
<?php
    $x 
1// بداية العدد
    
$total1 0// نقطة نحسب فيها الأعداد الزوجية
    
$total2 0// نقطة نحسب فيها الأعداد الفردية
    
while ($x <= 100
    {
        if (
$x == 0)
        {
        
$total1 $total1 $x;
        
$x++;
        }
        else
        {
        
$total2 $total2 $x;
        
$x++;
        }
    }
    echo 
"الناتج الزوجى";
    echo 
"<br>";
    echo 
$total1;
    echo 
"<br>---------<br>";
    echo 
"الناتج الفردى";
    echo 
"<br>";
    echo 
$total2;

?>


هل يوجد شيئ صعب في هذاالكود ؟ لا اعتقد ذلك , لان كل ما نقوم بفعله منطقي جدا
ملاحظه: يمكن استخدام عبارة WHILE وداخلها WHILE وداخلها WHILE وداخلها IF وكل شي تريد واترك لك الباب مفتوح لكي تقوم بإستكشاف ما اعنيه من هذه الملاحظه Smile


  • اسئلة على الدرس:
    • قم بعمل برنامج لحساب درجات الطلاب , حيث ضع افتراضا عشر درجات لطلاب ( $student4_grade ) ( $student3_grade ) ( $student2_grade ) ( $student1_grade ) ( $student10_grade ) ........ ( $student5_grade ) وقم بحساب معدل الطلاب عن طريق عبارة التكرار While ( مساعده : معدل الطلاب = مجموع الدرجات ÷ عددها )
    • قم بالتعديل على برنامج السؤال الاول , حيث تقوم بحساب معدل الدرجات الزوجيه , ومعدل الدرجات الفردية
  • الـــدرس الــقادم :
    سوف نقوم في الدرس القادم بمعرفة معلومات عامه عن الدوال الشرطية , وعبارات التكرار منها SWTICH و FOR وسوف نقوم بمعرفة بعض ملامح ونصائح في لغة PHP
للأمانة منقول من شبكة غير مسموح بعرض الروابط الا بعد التسجيل و تفعيل العضوية

اخر مواضيعى

مع التحية Pepo
لولا ان لهذا المنتدى اخوة واخوات مثلكم.. ما كان له وجود حتى الأن
احبكم فى الله

تم تعديل المشاركة في : 2007-05-11 05:20 AM بواسطة Pepo.

2007-03-23 02:16 AM
زيارة موقع العضو إعرض جميع مشاركات العضو إقتبس الرسالة فى رد

رد جديد  مشاركة جديدة 
الدرس الخامس: عبارات التكرار

إحتمالات التقييم ...
المشاركة : الكاتب الردود : المشاهدات : آخر رد
  الدرس الأول: مقدمة ومفاهيم عن لغة PHP Pepo 6 1,040 2008-04-09 08:50 PM
آخر رد: M!$s Blue
  الدرس الثانى: اول برنامج PHP Pepo 2 1,132 2008-02-16 11:29 AM
آخر رد: Pepo
  الدرس الثامن: النماذج وانواع ارسال البيانات Pepo 2 708 2008-02-05 04:52 PM
آخر رد: Pepo
  الدرس العاشر: التحقق من وطباعة محتوى النماذج Pepo 0 683 2007-03-31 02:25 PM
آخر رد: Pepo
  الدرس التاسع: انواع النماذج وطريقة كتابتها Pepo 0 911 2007-03-25 05:33 AM
آخر رد: Pepo
  الدرس السابع: متفرقات عن لغة PHP Pepo 0 516 2007-03-25 01:26 AM
آخر رد: Pepo
  الدرس السادس: عبارات شرطيه وتكرار اخرى Pepo 0 584 2007-03-24 04:31 AM
آخر رد: Pepo
  الدرس الرابع: العبارات الشرطيه Pepo 0 564 2007-03-22 09:13 PM
آخر رد: Pepo
  الدرس الثالث: المتغيرات , الثوابت و المعاملات Pepo 0 724 2007-03-22 06:37 PM
آخر رد: Pepo
  الدرس الرابع Pepo 0 320 2007-03-21 05:10 PM
آخر رد: Pepo

إشترك بالمشاركة | إضافة المشاركة للمفضلة
الذهاب إلى :