منتدى استراحات زايد

منتدى استراحات زايد (http://vb.ma7room.com/index.php)
-   منتدى أخبار المواقع والمنتديات العربية والأجنبية (http://vb.ma7room.com/forumdisplay.php?f=183)
-   -   [ درس ] الدرس السادس: عبارات شرطيه وتكرار اخرى (http://vb.ma7room.com/showthread.php?t=1402831)

محروم.كوم 03-04-2014 03:20 PM

[ درس ] الدرس السادس: عبارات شرطيه وتكرار اخرى
 
متطلبات قبل البدأ :
اهداف الدرس:
  • المسافات في لغة PHP
  • العباره الشرطية SWITCH
  • عبارة التكرار FOR
  • عبارة التكرار DO…WHILE
  • عبارات داخل عبارات
  • مثال تطبيقي

المسافات في لغة PHP:
كما قلنا في دروس سابقه ان لغة PHP لغه مسامحه , حيث انه توفر لك العديد من المزايا , ولا اعلم بشكل صحيح 100% اذا كانت المسافات تعتبر من الاشياء مسامحه ام لا , ولكن اليك ما اعرفه , في لغة PHP المسافات لا تحسب , اعني بذلك انه عندما تقوم بكتابة الكود فلا يميز المترجم انه هناك مسافات في الكود او لا , بغض النظر عن النصوص عندما تضعها بين علامتي التنصيص ” ” سوف اقوم بكتابة كودين الان , ولاحظ الفرق بينهما , الاول بمسافات والثاني بدون مسافات :
http://www.traidnt.net/vb/images/img...014/03/180.gif
وهنا نفس الكود لكن بدون مسافات :
http://www.traidnt.net/vb/images/img...014/03/181.gif
قم بتشغيل الكود الاول والثاني , وسوف تلاحظ ان جميع المثالين اخرجا نفس الناتج بغض النظر عن المسافات

العباره الشرطية SWITCH :

تعلمنا في الدرس قبل السابق العباره الشرطيه IF وتوابعها والان سوف نتعلم العباره
SWITCH وهي تعمل بنفس طريقة العباره IF ولكن يتم كتابتها بطريقة اخرى ويتم تنفيذ شرط واحد فقط اما في IF فيمكن كتابة عدة شروط , لنرى كيفية الكتابه , انظر الصوره التاليه :
http://www.traidnt.net/vb/images/img...014/03/182.gif
لنقم برؤية مثال على الطبيعه لتعرف كيفية عمل هذه الداله :
http://www.traidnt.net/vb/images/img...014/03/183.gif
ارأيت الطريقه ؟ بسيطه اليس كذلك ؟ ولاحظ اننا نعني بأنه يمكن في العباره IF كتابة اكثر من شرط مثل if( $x == 1 && $y == 4 ) ولكن في العباره SWITCH يمكننا فقط مقارنة متغير واحد فقط switch ( $ x ) , وايضا يمكن ان تقوم بألغاء اخر سطرين ( في الصوره سطر رقم 18 و 19 ) ولا يتوجب كتابتها وهي تعني ( ELSE ) اي غير ذلك ( حينما لا يتحقق اي شرط من الشروط ) , وايضا يجب ان تتذكر انه دائما يجب عليك كتابة العباره BREAK بعد نهاية كل CASE في العبارة SWITCH ولا يتوجب وجودها في السطر الذي يحوي DEFAULT

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

هناك عبارة تكرار اخرى غير العباره WHILE وهي العباره FOR , وتستخدم دائما اكثر من العباره WHILE لان ديناميكيتها اكبر من WHILE ولكن ناتج عمل الاثنين واحد , واذا عملت عباره بالاولى يمكن عملها بالثانيه والعكس , ولا يوجد ناتج تقوم بعمله في الاولى ولا تستطيع ان تقوم به في الثانيه , والقرار في الاخير يرجع الى المبرمج , لنرى طريقة الكتابه وهي كالتالي :
http://www.traidnt.net/vb/images/img...014/03/184.gif
مثال على العباره , لنقم بالعد من 1 الى خمسه , مثلما فعلنا مع العباره WHILE ونرى ماهي الاختلافات :
http://www.traidnt.net/vb/images/img...014/03/185.gif
في هذه المره قمنا بعملها فقط ب 5 اسطر , هل لاحظت الفروقات الان ؟ الفرق الاول في العباره WHILE اننا نحدد المتغير في البدايه , وزيادة المتغير داخل العباره, اما في العباره FOR فاننا نستطيع فعل ذلك كله بين القوسين التي يوجد بها الشروط , ونترك باقي العمل الى FOR , لا تنسى ان $i++ هي نفسها $i = $i + 1

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

تختلف عبارة التكرار هذه عن اختها WHILE انها تقوم بتنفيذ الامر اولا , ثم بعد ذلك تقوم بمقارنة الشرط , وطريقة كتابتها كالتالي :
http://www.traidnt.net/vb/images/img...014/03/186.gif
لنقم مره اخرى بكتابة الاعداد من 1 الى عشره ونرى الاختلاف , اكتب في محرر الاكواد التالي:
http://www.traidnt.net/vb/images/img...014/03/187.gif

هل لاحظت الاختلاف ؟ فقط انه قمنا بطباعة العدد قبل التحقق من الشرط , والتغيير طفيف ويستخدم عند الحاجه , لا تقلق في التطبيقات المتقدمه سوف نشاهد بعض من هذه الحيل البرمجيه, ملاحظه : لا تقم ابدا بنسيان الفاصله المنقوطه بعد كتابة الشرط , والا سوف يكون هناك خطأ برمجي في الكود http://www.traidnt.net/vb/images/img...2014/03/89.gif

عبارات داخل عبارات :

كما قلنا في دروس سابقه , يمكننا ادراج عبارات داخل عبارات , اي انه يمكنك كتابة العباره FOR وداخلها العباره FOR , او العباره WHILE وداخلها العباره FOR وداخلها IF كل ذلك سهل جدا , ويحتاج الى قليل من التركيز , سوف نقوم الان بعمل مثال تطبيقي يحتوي على عبارة تكرار وداخلها عبارة تكرار , لنقم بعمل جدول الضرب ونحاول مع بعضنا البعض كتابة الكود , لنقم بتسهيل الامر , قم بفتح برنامج Microsoft FrontPage في جهازك وقم بكتابة جدول الضرب العدد 2 من ( 1 – 5 ) , انظر الشكل التالي:
http://www.traidnt.net/vb/images/img...014/03/188.gif
وعند مشاهدة محتوى كود ال HTML سوف ترى التالي :
http://www.traidnt.net/vb/images/img...014/03/189.gif
الان قم بالتركيز معي لكي توضح الصوره , لو نظرت الى الكود بالاعلى تجد انه HTML فقط وتجد انه مكرر كثيرا , وانت تحتاج الى استخدام عبارات التكرار لتقم بتسهيل الموضوع على نفسك , اذن يجب ان تكتشف اماكن التكرار , دقق في الكود وحاول ان تعرف اماكن التكرار ……….. هل عرفت الاماكن ؟ انظر الى الكود التالي وسوف احدد لك اماكن التكرار
http://www.traidnt.net/vb/images/img...014/03/190.gif
انظر الى الخطوط السوداء , ترى ان الوسم و الوسم يتكرران في كل مره ننشئ بها صف ( ROW ) جديد , اذن الان نحتاج الى دالة تكرار ونحتاج ان تقوم بالتكرار 5 مرات لاننا نريد جدول الضرب للعد 2 من ( 1 الى 5 ) ( قم بعد الخطوط السوداء وسوف تجد انها 5 خطوط ) , لكي نقوم بتكرار الاصفف , افتح محرر الاكواد واكتب التالي :
http://www.traidnt.net/vb/images/img...014/03/191.gif
الان لقد عرفنا كيفية تكرار الاصفف , اذن لنظر الى صورة كود HTML مره ثانيه , وقم بالبحث عن تكرار جديد , اذا لم يوجد , فقد انتهينا , وان وجد فنحتاج الى ان نقوم بكتابة دالة التكرار مره اخرى , …………….. هل عرفت مكان التكرار الاخر ؟ انظر الى الصوره لترى اين هو
http://www.traidnt.net/vb/images/img...014/03/192.gif
لاحظ هنا ان الوسم و يتكرر في كل مره نكتب بها عدد جديد , والوسم هو لكتابة الخلايا في الجدول , تكرر الوسم عندنا , وفي كل مره نقوم بكتابة الخليه مرتان , اذن نحتاج ان نقوم بالتكرار مرتان ( لاننا نريد جدول الضرب للعدد 2 ) , ارجع الى محرر الاكواد واكتب التالي ( بين وسم و ) ,
http://www.traidnt.net/vb/images/img...014/03/193.gif
ما قمنا به هنا , اننا قمنا بتكرار الوسوم على حسب العدد الذي نريد انشاء عملية الضرب له , لاحظ ان المتغير x شرطه ان يكون اقل من او يساوي العدد 2 لكي يستمر في التكرار , ولاحظ هنا اننا نقوم بعملية ضرب المتغير x والمتغير y في مكان كتابة محتوى الصف , لكي نقوم بكل شي تلقائيا , قم بتشغيل الكود وسوف يكون الناتج التالي :
http://www.traidnt.net/vb/images/img...014/03/194.gif
ارأيت الان قمنا بكتابة جدول الضرب للعدد 2 بمجرد عبارتين تكرار صغيره http://www.traidnt.net/vb/images/img...2014/03/89.gif ممتع جدا اليس كذلك ؟ لكن لم ننتهي بعد , لو نظرت الى كود ال HTML ترى اننا نريد كتابة العباره التاليه في الجدول ( مضروب في ) , لكي نقوم بإخراج الجدول بشكل افضل , انظر الى الصوره وستعرف ما اعنيه
http://www.traidnt.net/vb/images/img...014/03/195.gif
كيف نقوم بذلك في دالتين التكرار , قم بوضع يدك على رأسك واستغرق في التفكير لمدة دقيقتان وانت تنظر الى الكود , واسأل نفسك , كيف سأقوم بعملها , وسوف يأتيك الجواب كالتالي , نقوم بكتابة العباره ( مضروب في ) في اول وسم وفي اول وسم , يعني عندما يكون المتغير x يساوي 1 وعندما يكون المتغير y يساوي 1 , قمنا بحل المشكله وما نحتاجه هو عبارة IF الشرطية ويكون شرطها انه عندما يكون المتغير x يساوي 1 و المتغير y يساوي واحد , لا تقم بضرب المتغيرين بل قم بكتابة العباره ( مضروب في ) غير ذلك قم بضرب المتغيرين مع بعضهمها البعض , اذن ارجع الى محرر الاكواد وقم بتعديل الكود الى التالي:
http://www.traidnt.net/vb/images/img...014/03/196.gif

وفي النهايه سوف يكون ناتج عملك الرائع هو الجدول التالي ,
http://www.traidnt.net/vb/images/img...014/03/197.gif
اتمنى ان يكوني شرحي جعلك تفهم هذه النقاط جيدا , ولا تنسى انه يجب ان تقوم بمحاولة عمل اشياء انت تريدها , ولا تحصر التمارين على ما تراه هنا , لكي تقوم بالتوسع في البرمجه http://www.traidnt.net/vb/images/img...2014/03/89.gif

اسئـــلة على الدرس :
  1. قم بتعديل جدول الضرب في الاعلى , واجعله للعدد 2 و 3 و 4 و 5 و 6 و 7 و 8 و 9 و 10 , واجلعه يقوم بالضرب من العدد ( 1 – 10 ) مثل جدول المدارس http://www.traidnt.net/vb/images/img...2014/03/89.gif مساعده : الحل يكمن في الشروط

الـــدرس الــقادم :

سوف نقوم في الدرس القادم بمعرفة معلومات عن بعض الدوال المفيده , ومعلومات عن الوسوم , وكتابة PHP مع HTML لكي تستعد الى الدخول الى عالم النماذج .


الساعة الآن 03:14 AM

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.5.2 TranZ By Almuhajir


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227