المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : [دورة ديزاد باتنة المفتوحة 2014]الدرس مفصل الثالث : اتخاذ القرارات وحلقات التكرار



Chakira
11-01-2013, بتوقيت غرينيتش 03:40 PM
http://www.dzbatna.com/images/icons/iconrote.gif [ط¯ظˆط±ط© طھط±ط§ظٹط¯ظ†طھ ط§ظ„ظ…ظپطھظˆط*ط© 2014]ط§ظ„ط¯ط±ط³ ط§ظ„ط«ط§ظ„ط« : ط§طھط®ط§ط° ط§ظ„ظ‚ط±ط§ط±ط§طھ ظˆط*ظ„ظ‚ط§طھ ط§ظ„طھظƒط±ط§ط± (http://www.dzbatna.com/t1515009/)



السلام عليكم ورحمة الله وبركاته
السادة أعضاء ديزاد باتنة
تحيه طيبه اليكم

نستكمل سويا دروس دورة ديزاد باتنة المفتوحة التى ابتدأناها سويا فى معهدنا الغالى ديزاد باتنة

والآن سنقدم الدرس مفصل الثالث بعنوان اتخاذ القرارات وحلقات التكرار وتتمثل محاور الحديث على :
1- مقدمة الى اتخاذ القرار .
2- جملة joomla if
3- جملة joomla if ... else
4- جملة joomla if ... elseif ... else
5- جملة joomla switch
6- استخدام المعاملات المنطقيه
7- مقدمة الى حلقات التكرار
8- جملة joomla for
9- جملة joomla while
10- جملة joomla do....while
11- جملة joomla foreach


الشرح طريقة

1- مقدمة الى اتخاذ القرار .
اتخاذ القرار ببساطه بعيدأ عن البرمجه وكتابة الأكواد هو شئ أساسى فى حياتك العمليه فكل شئ فى حياتك يسير تبعا لاتخاذ قرار فمثلا :
أنت تستيقظ الصباح باكر سيكون هناك بعض العمليات التى تنفذها مثل غسل الوجه والوضوء ....الخ
وعلى حسب اليوم ستقرر هل أنك ستتوجه الى عملك أم لا .
فاذا كان اليوم هو يوم الجمعه فبالطبع فانك لن تتوجه الى عملك لأن الجمعه أجازه http://www.dzbatna.com/images/smilies/nosweat.gif
أما اذا كان يوم آخر ستتوجه الى عملك لتمارس حياتك العمليه .

المثال السابق من الحياه العمليه فاذا نظرنا الى الكلمات باللون الازرق ستجد أنها تحدد شئ معين وهو ما نعنى به اتخاذ القرار . ( اذا كان كذا سيحدث كذا وان لم يكن سيحدث شئ آخر ).

أما اذا تحدثنا عن اتخاذ القرار فى البرمجه سنجد أنه لا يوجد اختلاف بينها وبين ذلك المثال فقد نحتاج فى بعض التطبيقات الى تغيير مسار أو اتجاه تنفيذ البرنامج بناء على تغيير بعض الظروف التى تؤثر على البرنامج وعلى ذلك المسار .غالبا يعبر عن تلك الظروف المؤثره بواسطة شرط أو مجموعه من الشروط يعتمد على تحققها أو عدم تحققها مسار تنفيذ البرنامج .
وعلى سبيل العموم يحتوى هيكل بناء php على ثلاث عبارات شرطيه وهم :
الأولى : if
الثانيه : if ...else ويتفرع منها if ... elseif ... else
الثالثه : switch


2- جملة joomla if [اذا كان .... فــ ......]
وفيها يتم تنفيذ العمليات داخل الداله فى حالة تحقق الشرط ثم يستمر الى باقى تنفيذ الكود code أما ان لم يتحقق الشرط فسيتجاهل البرنامج الكود code المتواجد داخل الداله .

الصيغه العامه لجملة joomla if :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
if(الشرط الذى يتم اختباره){
//ضع هنا الكود code الذى تريد تنفيذه عند تحقق الشرط
}
?> </code> </code>

واذا أخذنا مثال على جملة joomla if :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=1;
if($prog==1){
echo "passed";



}
?> </code> </code>

فى هذا المثال قمنا بتعريف متغير جديد واعطينا له القيمه واحد ثم استخدمنا الجمله الشرطيه if فى حالة أن قيمة المتغير هى واحد سيتم طباعة كلمة passed ثم يستمر فى تنفيذ باقى الكود code المتواجد فى الملف
تابع معى ... اذا قمت بتغيير قيمة المتغير من واحد الى اتنين وقمت بتنفيذ الكود code فانه لن يطبع شئ والسبب هو أن الشرط لم يتحقق لمى يتم تنفيذ الكود code المتواجد بداخل الداله الشرطيه ويتضح هذا من المثال التالى :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=2;
if($prog==1){
echo "passed";
}
?> </code> </code>

3- جملة joomla if ... else [اذا كان .... فــ ...... واذا لم يكن فــ ....]
تتشابه تلك الجمله مع الجمله السابقه كثيرا ولكنها تختلف فى أنها ستنفذ العمليات فى حالة تحقق الشرط وتنفذ عمليات أخرى فى حالة عدم التحقق .
فسيكون هنا على البرنامج أن يتأكد من الشرط المكتوب ويوجد لدينا حالتان اما أن يتحقق الشرط وهنا سيتم الدخول الى الجمله وتنفيذ ما بداخلها كما تم تعريفه بالسابق
وان لم يتحقق الشرط فانه سيقوم بالدخول الى الجمله وتنفيذ ما بعد كلمة else وينتقل الى نهاية الجمله الشرطيه ومن ثم ينتقل الى تنفيذ الأوامر الى تقع خارجها .

الصيغه العامه لجملة joomla if ... else
رمز PHP:

<code style="white-space:nowrap"> <code> <?
if(الشرط الذى يتم اختباره){
//ضع هنا الكود code الذى تريد تنفيذه عند تحقق الشرط
}else{
//ضع هنا الكود code الذى سيتم تنفيذه عند عدم تحقق الشرط
}
?> </code> </code>

واذا أخذنا مثال على تلك الجمله :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=1;
if($prog==1){
echo "Passed";
}else{
echo "Not Passed";
}
?> </code> </code>

تابع معى ... اذا قمت بتغيير قيمة المتغير من واحد الى اتنين وقمت بتنفيذ الكود code فانه سيقوم بطباعة كلمة Not Passed وذلك لعدم تحقق الشرط المتواجد داخل الاقواس ويتضح هذا من المثال التالى :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=2;
if($prog==1){
echo "Passed";
}else{
echo "Not Passed";
}
?> </code> </code>

4- جملة joomla if ... elseif ... else[اذا كان .... فــ ...... واذا كان.... فــ ..... واذا لم يكن فـ ....]
تتشابه أيضا تلك الجمله مع الجمل السابقه كثيرا ولكنها تختلف فى أنها ستختبر عدة شروط وفى حالة تحقق الشرط سيتم تنفيذ الكود code الموجود بالداخل وفى حالة عدم تحقق أى شرط من الشروط فسيتم تنفيذ ما بعد else .

الصيغة العامه لجملة joomla if ... elseif ... else
رمز PHP:

<code style="white-space:nowrap"> <code> <?
if(الشرط الذى يتم اختباره){
//ضع هنا الكود code الذى تريد تنفيذه عند تحقق الشرط
}elseif(الشرط الثانى){
//ضع هنا الكود code الذى سيتم تنفيذه عند تحقق الشرط الثانى
}elseif(الشرط الثالث){
//ضع هنا الكود code الذى سيتم تنفيذه عند تحقق الشرط الثالث
}else{
//ضع هنا الكود code الذى سيتم تنفيذه فى حالة عدم تحقق أى شرط من الشروط السابقه
}
?> </code> </code>

ولنأخذ مثال على تلك الجمله
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=1;
if($prog==0){
echo "Zero";
}elseif($prog==1){
echo "First";
}elseif($prog==2){
echo "Second";
}else{
echo "None of All";
}
?> </code> </code>

والآن معى قم بتغيير قيمة المتغير $prog
ولاحظ التغيير فى تنفيذ الكود code .

5- جملة joomla switch
نفترض أن لدينا متغير ونريد أن نختبر قيمته اذا كان مثلا قيمته هى ابراهيم أم سعيد أم عبدالله
فعلينا أن نقوم باستخدام الداله if و else عدد من المرات مما يجعل الكود code كبيرا جدا ومعقدا الى حد كبير مما يجعل عملية صيانه البرنامج تعتبر عمليه شاقه ومرهقه .
لذا جاءت الينا الجمله switch لكى تجعل من عملية كتابة مثل تلك التعابير هى مهمه سهله

الصيغه العامه لجمله switch
رمز PHP:

<code style="white-space:nowrap"> <code> <?
switch (اسم المتغير الذى سيتم اختبار قيمته) {
case القيمة الأول :
//نفذ ما هو موجود هنا فى حالة تحقق القيمه الأولى
break;
case القيمه الثانيه:
//نفذ ما هو موجود هنا فى حالة تحقق القيمه الثانيه
break;
case القيمه الثالثه:
//نفذ ما هو موجود هنا فى حالة تحقق القيمه الثالثه
break;
} </code> </code>

?>

ولنأخذ مثال توضيحى عليها :

رمز PHP:

<code style="white-space:nowrap"> <code> <?
$prog=1;
switch ($prog) {
case 1:
echo "First";
break;
case 2:
echo "Second";
break;
case 3:
echo "Third";
break;
}
?> </code> </code>

فى هذا المثال اعلنا المتغير $prog ووضعنا به القيمه واحد واستخدمنا الجمله switch لعمل الجمله الشرطيه
لاحظ : يجب وضع كلمة
رمز PHP:

<code style="white-space:nowrap"> <code> break;
</code> </code>

بعد نهاية كل احتمال

6- استخدام المعاملات المنطقيه
تستخدم المعاملات المنطقيه للدمج بين عدة شروط فى نفس الوقت وهى تشبه فى نظرية عملها البوابات المنطقيه التى تدرس مفصل فى الكهرباء لتنفيذها فيوجد لدينا هنا ثلاث معاملات منطقيه يتم استخدامهم وهم على الترتيب :


المعامل AND ونظيره &&
المعامل OR ونظيره ||
المعامل NOT ونظيره !

أولا : المعامل AND ونظيره && :
ومعناه أنه يتم التأكد من كافة الشروط الموجوده فى الداله الشرطيه والمثال التالى سيوضح ما المقصد :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$a=5;
$b=9;
if($a==5 && $b==9){
echo "لقد تحققت جميع الشروط";
}else{
echo "لم تتحقق جميع الشروط";
}
?> </code> </code>

ومعناه أنه اذا كانت قيمة المتغير الأول تساوى 5 والثانى تساوى 9 قم بتنفيذ الكود code التالى له وفى حالة عدم تساوى احدى القيمتان قم بتنفيذ ما بعد else
هذا معناه أنه يجب أن يتحقق كل الشروط وفى حالة عدم تحقق احد الشروط لم ينفذ الكود code وسيتم تنفيذ ما بعد else .

ثانيا : المعامل OR ونظيره || :
يقوم بالتحقق من عدة شروط فاذا تحقق أحد الشروط فانة يقوم بتنفيذ الكود code
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$a=5;
$b=9;
if($a==6 || $b==9){
echo "لقد تحقق أحد الشروط";
}
?> </code> </code>

ومعناه اذا كان المتغير الأول يساوى 6 أو المتغير الثانى مساوى ل 9 فقم بتنفيذ الكود code الذى يليه.

ثالثا : المعامل NOT ونظيره ! :
يقوم بالتأكد من أن هناك قيمه غير صحيحه لكى يتم تنفيذ شئ معين والمثال التالى يوضح ذلك :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$a=5;
if ($a!=5){
echo "welcome";
}
?> </code> </code>

فى هذا المثال قمنا بالتأكد من أن قيمة المتغير لا تساوى 5 وفى حالة عدم التساوى قم بتنفيذ الكود code التالى له .

7- مقدمة الى حلقات التكرار
جميع الأكواد والسطور التى قمت بكتابتها سابقا هى تنفذ على مره واحده فقط أى يتم تنفيذها فى الكود code مره واحده فقط فنفترض أنك ترد أن تنفذه مرتان او ثلاث فما سيتبادر الى ذهنك فعله هو عملية كتابة الكود code 3 مرات أو 4 رات على حسب عدد المرات التى تريد أن تنفذ بها الكود code .

الى هذا جميل جدا ولكن ماذا ستفعل اذا كنت تريد أن تنفذ الكود code الخاص بك عدد 100 مره أو تنفذه عدد غير معروف من المرات يعتمد على شئ آخر .

فهل ستقوم بكتابة الكود code 100 مره http://www.dzbatna.com/images/smilies/crazy.gif أم ستقوم بتغيير الكود code البرمجى عند كل مره يتم استدعاؤها http://www.dzbatna.com/images/smilies/no.gif
ستكون عملية مستحيله جدا

ولهذا جاءت حلقات التكرار لكى تقوم بتلك المهمه وهى تنفيذ الكود code عدد كبير من المرات وبعدد أسطر قليل جدا أو تنفيذ الكود code بعدد غير معروف من المرات .
ولينا هنا 4 أنواع من الحلقات التكراريه وهى :


الحلقه for
الحلقه while
الحلقه do....while
الحلقه foreach

8- جملة joomla الحلقه التكراريه for :
وفيه يتم تنفيذ الكود code مادام الشرط متحققا فى بداية الحلقه وهنا نقوم بتحديد طريقة تصرف الشرط أى نحدد ما يلى :


تحديد بداية الشرط
تحديد شرط الحلقه
تحديد طريقة التصرف

الصيغة العامه للحلقه التكراريه for :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
for (بداية الحلقه ; شرط التحقق ; طريقة تصرف الحلقه ){
// نفذ الكود code المتواجد هنا ما دامت الحلقه فى طور التنفيذ
}
?> </code> </code>

والآن لنأخذ مثال توضيحى على ذلك :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
for ($i=0 ; $i<5 ; $i++ ){
echo $i;
}
?> </code> </code>

فى هذا المثال يتضح أننا قمنا بحجز عداد كبداية للحلقه وهو المتغير i واعطينا له القيمه الابتدائيه وهى صفر وفى تحديد شرط الحلقه قمنا بتحديد أن الشرط للتنفيذ هو أن يكون قيمة المتغير أقل من 5
أما عن طريقة تصرف الشرط هى عملية الزيادة بمقدار الواحد
قم بتجربة الكود code على حاسبك وقم بتغيير القيم مثل القيم الابتدائيه وشرط التشغيل وطريقة التصرف

9- جملة joomla الحلقه التكراريه while :
حلقه شائعة الاستخدام فى عمليات قواعد البيانات وفيها يتم التحقق من الشرط ثم تنفيذ الكود code ثم العوده الى الشرط مره أخرى والتحقق من عمله أم لا وفى حالة عمله ينفذ الكود code مره أخرى ويعود الى الشرط مره أخرى وهكذا ....

الصيغه العامه لحلقة while :

رمز PHP:

<code style="white-space:nowrap"> <code> <?
while (الشرط الذى سيتم اختباره){
//الكود code الذى سيتم تنفيذه عند تحقق الشرط
}
?> </code> </code>

مثال توضيحى على الحلقه :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$i=0;
while ($i<5){
echo $i;
$i++;
}
?> </code> </code>

وهنا تم حجز العداد i ووضعنا به القيمه الابتدائيه صفر وفى بداية الحبقه يتم الاختبار اذا كان قيمة العداد أقل من الخمسه أم لا
وفى حاله كونها أقل من خمسه ينفذ الكود code
وعندما يكون الشرط غير متحقق لا ينفذ الكود code ولكنه يتجه الى باقى الكود code الموجود بالصفحه ويترك الحلقه التكراريه
قم بتجربة الكود code على حاسبك وقم بتغيير شرط التشغيل.

10- جملة joomla الحلقه التكراريه do...while :
لا تختلف عن سابقتها الا انه يتم تنفيذ الكود code أولا ثم بعد ذلك يتم اختبار الشرط وفى حالة التحقق يرجع مره أخرى للكود code وينفذه مره ثانيه وهكذا حتى يصل الى حاله عدم تحقق الشرط .
هذا يعنى أن الكود code يتم تنفيذه مره واحده على الاقل .

الصيفه العامه لحلقه do...while :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
do {
//نفذ هذا اولا
}while(الشرط);
?> </code> </code>

مثال توضيحى :
رمز PHP:

<code style="white-space:nowrap"> <code> <?
$i=0;
do {
echo $i;
$i++;
}while($i<5);
?> </code> </code>

هذا المثال هو نفسه المثال الذى قمنا بانشؤه فى الحلقه while ولكن بعد تنفيذه ععلى الحلقه do... while

11- جملة joomla الحلقه التكراريه foreach :
فى الواقع تستخدم تلك الحلقه فى التعامل مع المصفوفات وهى سيتم دراستها بشكل مفصل فى الدروس المقبله لأهميتها الشديده فى التعامل مع الأكود code .
ولذلك سنأجل التعامل معها حين تطرقنا الى المصفوفات .

الى هنا ينتهى الدرس مفصل الثالث
الى اللقاء باذن الله فى الدرس مفصل الرابع

دروس سابقه :


[دورة ديزاد باتنة المفتوحة 2014] الدرس مفصل الاول : مقدمة ومتطلبات (http://dzbatna.net/vb/showthread.php?t=1507560) بتاريخ : السبت 20-3-2014

[دورة ديزاد باتنة المفتوحة 2014] مرجع رقم 1 (برامج السيرفر SERVERات والتحرير) (http://dzbatna.net/vb/showthread.php?t=1509918) بتاريخ : الاثنين 22-3-2014


[دورة ديزاد باتنة المفتوحة 2014]الدرس مفصل الثانى:مفاهيم والمتغيرات والثوابت وكتابة أول برنامج (http://dzbatna.net/vb/showthread.php?t=1510991) بتاريخ الثلاثاء 23-3-2014

[دورة ديزاد باتنة المفتوحة 2014] تطبيق رقم 1 (عمليات رياضية) (http://dzbatna.net/vb/showthread.php?t=1513013) بتاريخ الخميس 25-3-2014



الدرس مفصل بصيغة PDF :


http://dzbatna.net/vb/attachment.php...3&d=1269724962 (http://dzbatna.net/vb/attachment.php?attachmentid=470093&d=1269724962)
http://dzbatna.net/vb/attachment.php...8&d=1269790914 (http://dzbatna.net/vb/attachment.php?attachmentid=470268&d=1269790914)

جزيل الشكر للأخ : MR.Electronic (http://dzbatna.net/vb/member.php?u=65520) , أكرم أحمد (http://dzbatna.net/vb/member.php?u=74512) ,

يوم الاثنين باذن الرحمن موعدنا مع التطبيق على الدرس مفصل
ويوم الثلاثاء موعدنا مع الدرس مفصل القادم

أرجو أن أكون قد قدمت لكم الدرس مفصل بشكل واضح ومفهوم
واذا كان هناك شئ يشوبه الغموض لا تتردد فى وضع استفسارك

تقبلوا تحياتى
Mr.Ajax








ألعاب الأندرويد مجانا و حصريا (http://www.apotox.info/forum)




https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى