Lecture 4 C++
Lecture 4 C++
) if ( condition
{
إذا كان الشرط صحيحًا نفذ هذا الكود //
}
) else if ( condition
{
إذا كان الشرط صحيحًا نفذ هذا الكود //
}
else
{
نفذ هذا الكود في حال لم يتم التعرف على الكود في أي شرط //
}
لست بحاجة إلى إستخدام الجمل الثالثة في كل شرط تضعه في البرنامج ,و لكنك مجبر على إستخدام جملة
ifفي اللغة العربية تعني " إذا " ,و هي تستخدم فقط في حال كنت تريد تنفيذ كود معين حسب شرط معين.
المثال األول
إذا كانت قيمة المتغير Sأكبر من 5سيتم طباعة الجملة.S is bigger than 5 :
Main.cpp
>#include <iostream
;using namespace std
)(int main
{
;int S = 0
) if( S > 5
{
;"cout << "S is bigger than 5
}
;return 0
}
فكان جواب الشرط كال ( , ) falseلذلك لم ينفذ أمر الطباعة الموجود في جملة الشرط.
المثال الثاني
إذا كانت قيمة المتغير Sأكبر من 5سيتم طباعة الجملة.S is bigger than 5 :
Main.cpp
>#include <iostream
;using namespace std
)(int main
{
;int S = 30
) if( S > 5
{
;"cout << "S is bigger than 5
}
;return 0
}
فكان جواب الشرط نعم ( ,)trueلذلك نفذ أمر الطباعة الموجود في جملة الشرط.
elseفي اللغة العربية تعني " أي شيء آخر " ,و هي تستخدم فقط في حال كنا نريد تنفيذ كود معين في حال
يجب وضعها دائمًا في األخير ,ألنها تستخدم في حال لم يتم تنفيذ أي جملة شرطية قبلها.
إذًا ,إذا نفذ البرنامج الجملة ifأو else ifفإنه سيتجاهل الجملة .else
و إذا لم ينفذ أي جملة من الجمل ifو else ifفإنه سينفذ الجملة .else
المثال األول
إذا كانت قيمة المتغير Sتساوي 5سيتم طباعة الجملة.S is equal 5 :
إذا كانت قيمة المتغير Sال تساوي 5سيتم طباعة الجملة.S is not equal 5 :
Main.cpp
>#include <iostream
;using namespace std
)(int main
{
;int S = 5
) if( S == 5
{
;"cout << "S is equal 5
}
else
{
;"cout << "S is not equal 5
}
;return 0
}
فكان جواب الشرط نعم ( , ) trueلذلك نفذ أمر الطباعة الموجود في الجملة .if
المثال الثاني
إذا كانت قيمة المتغير Sتساوي 5سيتم طباعة الجملة.S is equal 5 :
إذا كانت قيمة المتغير Sال تساوي 5سيتم طباعة الجملة.S is not equal 5 :
Main.cpp
>#include <iostream
;using namespace std
)(int main
{
;int S = 20
) if( S == 5
{
;"cout << "S is equal 5
}
else
{
;"cout << "S is not equal 5
}
;return 0
}
فكان جواب الشرط كال ( , ) falseلذلك نفذ أمر الطباعة الموجود في الجملة .else
جملة else ifتستخدم إذا كنت تريد وضع أكثر من إحتمال ( أي أكثر من شرط ).
جملة أو جمل الـ else ifيوضعون في الوسط ,أي بين الجملتين ifو .else
مثال
•إذا كانت قيمة المتغير numberأكبر أو تساوي 4سيتم طباعة الجملة.four or greater :
•إذا كانت قيمة المتغير numberأصغر من 0سيتم طباعة الجملة.negative number :
Main.cpp
>#include <iostream
;using namespace std
)(int main
{
;int number = 3
) if( number == 1
{
;"cout << "one
}
) else if( number == 2
{
;"cout << "two
}
) else if( number == 3
{
;"cout << "three
}
) else if( number >= 4
{
;"cout << "four or greater
}
else
{
;"cout << "negative number
}
;return 0
}
three
العامل && يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب جميع الشروط الموضوعة يساوي .true
العامل || يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب شرط واحد على األقل يساوي .true
المثال األول
إذا كانت قيمة المتغير aبين 0و 20إطبع الجملة.acceptable number :
Main.cpp
>#include <iostream
)(int main
{
;int a = 14
{
}
;return 0
}
acceptable number
نالحظ أنه قد تم تنفيذ أمر الطباعة ألن قيمة المتغير aبين 0و .20
المثال الثاني
إذا كانت قيمة المتغير aبين 0و 20إطبع الجملة.acceptable number :
Main.cpp
>#include <iostream
)(int main
{
;int a = 26
{
}
;return 0
}
نالحظ أنه لم يتم تنفيذ أمر الطباعة ألن قيمة المتغير aليست بين 0و .20
المثال الثالث
إذا كانت قيمة المتغير aتساوي 1أو 2أو 3إطبع الجملة.you choose a valid number :
Main.cpp
>#include <iostream
)(int main
{
;int a = 2
) if( a == 1 || a == 2 || a == 3
{
}
;return 0
}
نالحظ أنه قام بتنفيذ أمر الطباعة ألن قيمة المتغير aتساوي .2
هنا كان سيسأسل نفسه ثالثة أسئلة ألنه يوجد ثالث شروط ,لكنه سأل نفسه سؤالين فقط.
بما أن واحدًا من األجوبة كان trueنفذ مباشرًة أمر الطباعة و لم ينظر حتى للشرط األخير.
في البرامج الفعلية يقوم المبرمج بوضع العديد من الشروط بداخل بعضها ,و ذلك حسب الفكرة التي يريد
تنفيذها في برنامجه.
كمثال بسيط ,لنفترض أننا نريد تحويل هذه الصورة إلى برنامج.
مثال
هنا قمنا بتجهيز متغير يمثل نوع الجنس إسمه isMaleو قلنا إذا كانت قيمته trueفهذا يعني أن الشخص هو
ذكر.
>#include <iostream
)(int main
{
bool isMale = false;
else
return 0;
Gender: female
فكان جواب الشرط , falseفانتقل إلى جملة الشرط اإلفتراضية elseلينفذ ما بداخلها.
أوًال ,قام بتنفيذ دالة الطباعة الموجودة فيها ,فطبع الجملة .Gender: female
ثم وجد شرطًا آخر بداخل الشرط اإلفتراضي ,فسأل نفسه التالي :هل قيمة المتغير ageأصغر أو تساوي 21؟
فكان جواب الشرط ,trueفقام بتنفيذ دالة الطباعة الموجودة فيها ,فطبع الجملة .She is a young girl
switchالجملةC++
تعريف الجملة switch
switchتعريف الجملة
switchنستخدمها إذا كنا نريد إختبار قيمة متغير معين مع الئحة من اإلحتماالت نقوم نحن بوضعها ,و إذا تساوت
هذه القيمة مع أي إحتمال وضعناه ستتنفذ األوامر التي وضعناها في هذا اإلحتمال فقط.
.case كل إحتمال نضعه يسمى
:أنواع المتغيرات التي يمكن إختبار قيمتها باستخدام هذه الجملة هي
طريقة تعريفها
switch(expression) {
case value:
// Statements
break;
case value:
// Statements
break;
default:
// Statements
break;
: int - byte - short - char - Stringنوع المتغير الذي يسمح لنا بإختباره
تساوي هذه القيمة سيقوم بتنفيذ األوامر الموضوعة expressionو يقصد من هذا كله ,أنه في حال كانت قيمة الـ
:.بعد النقطتين
مباشرًة switchلكي يخرج من الجملة breakاآلن بعد تنفيذ جميع األوامر الموضوعة بعد النقطتين ,يجب وضع
.و يمكننا أن ال نضعها أيضًا else,تعني إفتراضيًا و هي نفس فكرة الجملة default
.و لذلك نضعها باآلخر switchموجودة في الجملة caseهذه الجملة تنفذ فقط في حال لم تنفذ أي
ال حاجة لوضع breakللحالة األخيرة ألن البرنامج سيخرج من الجملة switchفي جميع األحوال.
ستفهم فكرة الجملة switchمن خالل األمثلة و سنريك كيف يمكنك أن تنفذ نفس األوامر ألكثر من حالة ,من
خالل األمثلة.
المثال األول
نالحظ أنه تم تنفيذ أمر الطباعة الموجود في الحالة الثانية ألن قيمة المتغير xتساوي .2
هنا سأل نفسه التالي :هل قيمة المتغير xتساوي 1؟
فكان جواب الشرط نعم ( ,) trueفقام بتنفيذ أمر الطباعة الموجود في هذه الحالة ,و بعدها خرج من جملة
المثال الثاني
نالحظ أن تم تنفيذ أمر الطباعة الموجود في الحالة اإلفتراضية ألن قيمة المتغير xال تساوي أي قيمة من القيم
الموضوعة في الحاالت.
بما أنه لم يجد أي حالة تساوت فيها القيمة مع قيمة المتغير الذي يتم اختباره ,قام بتنفيذ األوامر الموجودة في
الحالة اإلفتراضية ,defaultوعندما إنتهى من تنفيذ األوامر خرج من جملة الـ switchبأكملها.
إذا أردت وضع نفس األوامر ألكثر من حالة ,عليك وضع الحاالت تحت بعضها ,ثم كتابة األوامر ,ثم وضع .break
مثال
نالحظ أنه تم تنفيذ أمر الطباعة الموضوع للحاالت الثالث األولى ألن قيمة xتساوي .3
هنا سأل نفسه التالي :هل قيمة المتغير xتساوي 1أو 2أو 3؟
فكان جواب الشرط نعم ( ,) trueفقام بتنفيذ أمر الطباعة الموضوع لهذه الحاالت الثالث ,و بعدها خرج من