![]() |
الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
4.1) الجمل الشرطية و حلقات التكرار: وصلنا بفضل الله إلى الدرس الرابع الذي نشرع فيه على بركة الله.سنتكلم اليوم عن الجمل الشرطية و حلقات التكرار، هذا الدرس من أسهل الدروس، بسيط للغاية لكن جد مهم للمتابعة. لكن عليكم التحلي بالصبر و قراءته كاملا رغم طوله فهو جد مهم أيضا. أولا: الجمل الشرطية: نستعملها عندما نكون بصدد دراسة قيمة ما أو شرط ما، فإن تحقق الشرط نفعل كذا و إن لم يتحقق نفعل كذا. أكاد أجن، ما هو الشرط، و ما هو كذا، وضح وضح كفانا كلاما مبهما. لا باس أعرف أنك لا تحب إلا الأمثلة، كما تريد. إذا أردنا أن نقارن بين رقمين الشرط يكون هكذا: إذا كان س < ع إذن نكتب "س أكبر من ع" و إلا نكتب "س ليس أكبر من ع" لكن PHP لا يفهم العربية، فنكتبها بالإنجليزية: كود PHP:
إذن كما رأينا البناء يكون كالتالي: if (condition)i { Instruction 1; } else { Instruction 2; } مثال ثان: نريد أن نكتب إسم اليوم بالحصول على رقمه، يمكننا القيام بذلك بطرق عديدة. طريقة 1: كود PHP:
سهل نكتب في النهاية else و هي تعني إذا لم يتحقق الشرط، و نخبره أن رقمه خاطئ.......... لكن أن نكتب else في النهاية و هي تعني (إن لم يتحقق الشرط الأخير) سيكون هنالك مشكل. يمكنك أن تجرب: كود PHP:
لذلك نستعمل الطريقة الثانية أفضل. طريقة 2: كود PHP:
و بذلك else الأخيرة ستنفي كل الشروط و لن تعمل حتى يكون الرقم المختار غير موجود في القائمة كلها. لم أفهم جيدا لماذا يحدث هذا ؟؟؟؟ صدقني لا أستطيع أن أشرح أبسط من هذا، ما عليك سوى المحاولة بالأمثلة و بالطريقتين و مع تغيير الأرقام فتفهم من النتائج، هيا حاول. على أي حال هناك طريقة أسهل عندما يتعلق الأمر بتغير قيمة متغير (كما في المثال السابق) و ليس بشرط مقارنة (كما في المثال الأول (أكبر و أصغر) و هي كالتالي: طريقة 3: كود PHP:
لكنها تعمل مع القيم الثابتة للمتغيرات و ليس مع شروط المقارنة، و أتمنى أن أرى الأسئلة في حالة الإبهام. شرح كيفية العمل: وفقا لقيمة (س) { في حالة القيمة 1 : أكتب "السبت"، كسر سلسلة الأوامر، في حالة القيمة 2 : أكتب "الأحد"، كسر سلسلة الأوامر، .... .... .... في حالة قيمة لم نذكرها : أكتب "رقم خطأ"، } break; تعني أن يكسر سلسلة الأوامر بمعنى ينفذ الأمر الذي قبلها و يتوقف. مثال عكسي للفهم: إذا لم نكتب break و نختار الرقم 4 النتيجة سيكتب MardiMercrediJeudiVendredi يعني يكتب الأمر الرابع و السلسلة التي بعده. لكن Break يكسر سلسلة الأوامر فينفذ الأمر الرابع و يتوقف. لكن عليك التجريب بنفسك. أظن أن هذا يكفي الآن، رأينا المبادئ و يبقى التطبيقات فيما بعد. ثانيا حلقات التكرار: حلقات التكرار هي نظام يسمح لنا بتكرار الأوامر عدة مرات بدل كتابتها و إعادة كتابتها. يمكننا أن نكرر الأوامر لعدد معين من المرات أو نتوقف إذا تحقق شرط ما. توجد العديد من أنظمة التكرار، while(مادام)، for (من أجل)، do while (إفعل كذا حتى ...)، foreach (من أجل عناصر تنتمي لجدول) هذه الأخيرة (foreach) لن نتطرق إليها الآن حتى ندرس الجداول. مثلا أريد أن أكتب الأرقام الطبيعية بدءا من 0 إلى 10. يمكن أن أكتب أمر echo 11 مرة، لكن PHP يمكنه أن يكرر الكتابة بأمر واحد و حلقة تكرار واحدة دون أن يتعبني. الحلقة while: تقوم بالعمل التالي: نفرض في البداية س=0 مادام المتغير س أصغر من أو يساوي 10 { أكتب س ثم أضف 1 لقيمة س } هكذا باختصار و ترجمتها إلى PHP تعطينا التالي: كود PHP:
إذن نستعمل هذه الحلقة إذا كان التوقف عن التكرار متعلقا بشرط ما. الحلقة for: عمله كالآتي: من أجل قيم من 0 إلى 10 للمتغير س { أكتب س } هذه أبسط هاه. نترجمها إذن: كود PHP:
$x++ معناها $x+=1 و معناها أيضا: $x=$x+1 أي في كل مرة نضيف 1 للمتغير. و هذا يعني أن الخطوة بين القيم ستكون 1. هذه الحلقة نستعملها عندما يكون عندنا عدد معلوم من مرات التكرار. قد تظهر الحلقتين متماثلتين لكن لكل منهما دور مختلف لا تؤديه الأخرى إلا في حالات خاصة كمثالنا هذا. الحلقة do while: تقوم بنفس عمل while لكن الفرق الوحيد هو أن while تتحقق من الشرط قبل العمل أي إذا بدأنا بشرط خاطئ فإنها لا تعمل أبدا، لكن do while تعمل ثم تتحقق من الشرط أي إذا بدأنا بشرط خاطئ فستعمل مرة واحدة. و هما تستعملان حسب الحاجة و سنرى فيما بعد كيف نحتاج لواحدة دون الأخرى. كود PHP:
أعلم أن الدرس أتعبكم لكنه مهم جدا جدا بالإضافة إلى درس المتغيرات. باستعمال هذه الأدوات (المتغيرات، الجمل الشرطية، حلقات التكرار) سيكون في مقدورنا عمل أشياء كثيرة لذلك فضلت أن نثبت هذه المفاهيم بإمتحان بسيط في المرة المقبلة فتجهزوا. سيكون كل واحد مطالب بالقيام بتطبيقات وحده، ثم نصححها في الأخير. و في الإنتظار تمعنوا في التمرين التطبيقي التالي: التمرين: نريد صفحة PHP تطلب من الزائر أن يعطينا عددين طبيعيين مختلفين فنكتب له جميع الأعداد الأولية بينهما. يمكنك القيام بالتطبيق مباشرة. إن لم تكن لديك أي فكرة عن كيفية العمل تابع التحليل. التحليل: التحليل مهم جدا في البرمجة و هو التفكير في مراحل القيام بالعمل و هو خارج عن لوحة المفاتيح بل نقوم به بورقة و قلم لترتيب الأفكار. أولا علينا معرفة المعطيات و المطلوب و مراحل الوصول إلى المطلوب انطلاقا من المعطيات. المعطيات عددان طبيعيان مختلفان (أي أكيد سيكون أحدهما أكبر من الآخر) المطلوب جميع الأعداد الأولية بين العددين المعلومين. العدد الأولي هو العدد الذي يقبل القسمة على نفسه و على 1 فقط. إذن لمعرفة إن كان عدد أولي أو لا علينا أن ننشئ قواسمه و نرى إن كانت الرقم 1 و العدد نفسه فقط. الآن كيف ننشئ قواسم عدد ؟؟ نعلم أن قسمة عدد على أحد قواسمه تعطينا عددا صحيحا (بدون فاصلة) إذن باقي قسمة عدد على أحد قواسمه هو 0 جيد و جدنا مراحل العمل و رتبنا الأفكار. نسمي العددين المعطيين س و ع مثلا، ثم ننشئ قواسم الأعداد بين س و ع، و إذا وجدناه أوليا نكتبه. حاول الآن بمفردك، هيا حاول قليلا. إذا كنت غير قادر أبدا على العمل وحيدا لابأس أنظر الحل. الحل المفصل: ليكن عدد س نريد أن نعرف عن كان أوليا. نقوم بتجريب قسمته على الأرقام من واحد إلى س (بحلقة تكرار) و نتوقف عند أول قاسم له (أي عندما يكون باقي القسمة 0) إذا كان القاسم ليس س إذن فالعدد س ليس أولي (لأن س يقبل القسمة على هذا القاسم) و إلا فـ س أولي. جرب التالي: كود PHP:
الآن نضع هذا الكود في حلقة تكرار أخرى، تبدأ من رقم المعطيات الأصغر و تنتهي عند رقم المعطيات الأكبر. فنحصل على الكود التالي: كود PHP:
إنتهينا من الكود إذا. بقي المعطيات بما أن الزائر هو من يختار، سنضعها في صفحة و نبعثها إلى صفحة الكود بطريقة POST. كود PHP:
كود PHP:
تعمدت عدم شرح بعض الأمور حتى تسألوا. في الإنتظار. bye1 |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
شكرا جزيلا اخي الفاضل عبد الله
جاري مراجعة الدرس جيدا والي عودة بي تطبيق عملي وا مفهومه ان شاء الله شكرا جزيلا عبد الله الى عودة |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
شكرا اخي الكريم على الدرس و على الشرح المفصل
بارك الله فيك |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
اقتباس:
بالتوفيق في انتظار عودتك |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
اقتباس:
شكرا أختي و فيك بارك الله متابعة طيبة |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
السلام عليكم و رحمة الله لي عودة في المساء إن شاء الله مع التطبيقات bye1 |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
السلام عليكم جميعا بارك الله فيك عبد الله...ما قصرت لكن بصراحة هذا اصعب درس مر عليicon36 لاني حابس في الماتيماتيك...2.5 في باكالوريا الرياضياتicon36 اخدمو خاوتي راني نتفرج فيكمالـنـوم |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
اقتباس:
اول شيء يا خويا الغالي انتا تقول الدرس صعب وانا واش نقول يكون في علمك اخي كلنا متواضعون انا شخصيا لم ادرس اي لغة ولو في يوم من ايام وا البرمجة ليس اليها اي علاقة ابدا يعني انا في طريق وا هيا في طريق اخوك طبيب اسنان يعني ضعيف كثيرا في البرمجة لكن هنا كلنا اخوة نتعاون معا بعض وانا شخصيا اقول لي الاخ عبد الله ممكن شرح بسيط كيفية ربط لي وصول لي عمل الاخير تحياتي الخالصة اليك اخي الغالي يد واحدة لي وصلول لي الاحتراف |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
اقتباس:
icon36 يا موح ليس الدرس هو الصعب، لعلك تقصد التمرين و هو لا يتطلب مستوى في الرياضيات (مستوى سنة سابعة يكفي، استعملنا عمليات حسابية و أعداد أولية) و أدرك جيدا مدى اللبس الذي حدث لك لكن هذا لأنك ربما أول مرة ترى برنامج متكامل (كنا نقوم بأمثلة لا تتعدى 10 أسطر و الآن إختلف الأمر قليلا) حاول مجددا و ستجد أن الأمر سهل. ثم إذا كان لابد من تجاوز التمرين دون فهم فلابأس حاول فقط أن ترى كيف يتم استعمال مختلف الدروس مع بعضها فنحن ندرس كل درس وحده لكن الإستعمال يون فيه استعمالكل المكاسب. تتبع الخطوات و اسأل. و في الأخير لا تقلق أبدا، يمكنك المتابعة حتى إن كان هذا الأمر مبهما. (فأنت لا تريد أن تصبح مهندس إعلام آلي طبعا) سلام أخي و أنتظر إعادة محاولتك |
رد: الدرس الرابع: الجمل الشرطية و حلقات التكرار (دورة الـphp)
اقتباس:
اقتباس:
بارك الله فيكما اخويnosweat الدرس مفهوم نسبيا و الامثلة طبقتها...الاعداد الاولية استطيع استيعاب درسها لكنني لم استطع ان افهم في ماذا ستفيدنا هذه الامور؟؟surrender يعني ما علاقتها مثلا بانشاء موقع انترنت؟؟nosweat |
| الساعة الآن 04:36 AM. |
Powered by vBulletin
قوانين المنتدى