0% found this document useful (0 votes)
7 views

Lecture 4 C++

Uploaded by

kendahtaha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture 4 C++

Uploaded by

kendahtaha
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

‫‪++C‬جمل الشرط‬

‫جمل الشرط بشكل عام‬ ‫‪‬‬

‫جملة الشرط ‪if‬‬ ‫‪‬‬

‫جملة الشرط ‪else‬‬ ‫‪‬‬

‫جملة الشرط ‪else if‬‬ ‫‪‬‬

‫جمل الشرط بشكل عام‬

‫الشكل العام لوضع الشروط هو التالي‪.‬‬

‫) ‪if ( condition‬‬
‫{‬
‫إذا كان الشرط صحيحًا نفذ هذا الكود ‪//‬‬
‫}‬

‫) ‪else if ( condition‬‬
‫{‬
‫إذا كان الشرط صحيحًا نفذ هذا الكود ‪//‬‬
‫}‬

‫‪else‬‬
‫{‬
‫نفذ هذا الكود في حال لم يتم التعرف على الكود في أي شرط ‪//‬‬
‫}‬

‫لست بحاجة إلى إستخدام الجمل الثالثة في كل شرط تضعه في البرنامج‪ ,‬و لكنك مجبر على إستخدام جملة‬

‫الشرط ‪ if‬مع أي شرط‪.‬‬

‫تابع كل الدرس حتى تتعرف على جميع طرق وضع الشروط‪.‬‬


‫جملة الشرط ‪if‬‬

‫‪ 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‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ S‬أكبر من ‪5‬؟‬

‫فكان جواب الشرط كال ( ‪ , ) 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‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪S is bigger than 5‬‬

‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ S‬أكبر من ‪5‬؟‬

‫فكان جواب الشرط نعم (‪ ,)true‬لذلك نفذ أمر الطباعة الموجود في جملة الشرط‪.‬‬

‫جملة الشرط ‪else‬‬

‫‪ else‬في اللغة العربية تعني " أي شيء آخر "‪ ,‬و هي تستخدم فقط في حال كنا نريد تنفيذ كود معين في حال‬

‫كانت نتيجة جميع الشروط التي قبلها تساوي ‪.false‬‬

‫يجب وضعها دائمًا في األخير‪ ,‬ألنها تستخدم في حال لم يتم تنفيذ أي جملة شرطية قبلها‪.‬‬
‫إذًا‪ ,‬إذا نفذ البرنامج الجملة ‪ 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‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪S is equal 5‬‬


‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ S‬تساوي ‪5‬؟‬

‫فكان جواب الشرط نعم ( ‪ , ) 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‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪S is not equal 5‬‬


‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ S‬تساوي ‪5‬؟‬

‫فكان جواب الشرط كال ( ‪ , ) false‬لذلك نفذ أمر الطباعة الموجود في الجملة ‪.else‬‬

‫جملة الشرط ‪else if‬‬

‫جملة ‪ else if‬تستخدم إذا كنت تريد وضع أكثر من إحتمال ( أي أكثر من شرط )‪.‬‬

‫جملة أو جمل الـ ‪ else if‬يوضعون في الوسط‪ ,‬أي بين الجملتين ‪ if‬و ‪.else‬‬

‫مثال‬

‫إذا كانت قيمة المتغير ‪ number‬تساوي ‪ 1‬سيتم طباعة الكلمة‪.one :‬‬

‫•إذا كانت قيمة المتغير ‪ number‬تساوي ‪ 2‬سيتم طباعة الكلمة‪.two :‬‬

‫•إذا كانت قيمة المتغير ‪ number‬تساوي ‪ 3‬سيتم طباعة الكلمة‪.three :‬‬

‫•إذا كانت قيمة المتغير ‪ 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‬‬

‫‪ if‬وضع أكثر من شرط في الجملة‪C++‬‬


‫بإمكانك أن تضع أكثر من شرط بداخل جملة الشرط باستخدام العامل && أو ||‪.‬‬

‫العامل && يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب جميع الشروط الموضوعة يساوي ‪.true‬‬

‫العامل || يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب شرط واحد على األقل يساوي ‪.true‬‬

‫المثال األول‬
‫إذا كانت قيمة المتغير ‪ a‬بين ‪ 0‬و ‪ 20‬إطبع الجملة‪.acceptable number :‬‬
‫‪Main.cpp‬‬

‫>‪#include <iostream‬‬

‫;‪using namespace std‬‬

‫)(‪int main‬‬

‫{‬

‫;‪int a = 14‬‬

‫) ‪if( a >= 0 && a <=20‬‬

‫{‬

‫;"‪cout << "acceptable number‬‬

‫}‬

‫;‪return 0‬‬

‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪acceptable number‬‬

‫نالحظ أنه قد تم تنفيذ أمر الطباعة ألن قيمة المتغير ‪ a‬بين ‪ 0‬و ‪.20‬‬

‫هنا سأل نفسه سؤالين‪.‬‬

‫السؤال األول‪ :‬هل قيمة المتغير ‪ a‬أكبر أو تساوي ‪0‬؟‬

‫فكان جواب الشرط األول ‪.true‬‬

‫السؤال الثاني‪ :‬هل قيمة المتغير ‪ a‬أصغر أو تساوي ‪20‬؟‬

‫فكان جواب الشرط الثاني أيضًا ‪.true‬‬


‫بما أن كال الجوابين كانا ‪ true‬قام بتنفيذ أمر الطباعة‪.‬‬

‫المثال الثاني‬

‫إذا كانت قيمة المتغير ‪ a‬بين ‪ 0‬و ‪ 20‬إطبع الجملة‪.acceptable number :‬‬
‫‪Main.cpp‬‬

‫>‪#include <iostream‬‬

‫;‪using namespace std‬‬

‫)(‪int main‬‬

‫{‬

‫;‪int a = 26‬‬

‫) ‪if( a >= 0 && a <=20‬‬

‫{‬

‫;"‪cout << "acceptable number‬‬

‫}‬

‫;‪return 0‬‬

‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫نالحظ أنه لم يتم تنفيذ أمر الطباعة ألن قيمة المتغير ‪ a‬ليست بين ‪ 0‬و ‪.20‬‬

‫هنا سأل نفسه سؤالين‪.‬‬

‫السؤال األول‪ :‬هل قيمة المتغير ‪ a‬أكبر أو تساوي ‪0‬؟‬

‫فكان جواب الشرط األول ‪.true‬‬


‫السؤال الثاني‪ :‬هل قيمة المتغير ‪ a‬أصغر أو تساوي ‪20‬؟‬

‫فكان جواب الشرط الثاني ‪.false‬‬

‫بما أن واحدًا من الجوابين لم يكن ‪ true‬لم ينفذ دالة الطباعة‪.‬‬

‫المثال الثالث‬

‫إذا كانت قيمة المتغير ‪ a‬تساوي ‪ 1‬أو ‪ 2‬أو ‪ 3‬إطبع الجملة‪.you choose a valid number :‬‬
‫‪Main.cpp‬‬

‫>‪#include <iostream‬‬

‫;‪using namespace std‬‬

‫)(‪int main‬‬

‫{‬

‫;‪int a = 2‬‬

‫) ‪if( a == 1 || a == 2 || a == 3‬‬

‫{‬

‫;"‪cout << "'a' is a valid number‬‬

‫}‬

‫;‪return 0‬‬

‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪'a' is a valid number‬‬

‫نالحظ أنه قام بتنفيذ أمر الطباعة ألن قيمة المتغير ‪ a‬تساوي ‪.2‬‬
‫هنا كان سيسأسل نفسه ثالثة أسئلة ألنه يوجد ثالث شروط‪ ,‬لكنه سأل نفسه سؤالين فقط‪.‬‬

‫السؤال األول‪ :‬هل قيمة المتغير ‪ a‬تساوي ‪1‬؟‬

‫فكان جواب الشرط األول ‪ false‬فانتقل للشرط الذي يليه‪.‬‬

‫السؤال الثاني‪ :‬هل قيمة المتغير ‪ a‬تساوي ‪2‬؟‬

‫فكان جواب الشرط الثاني ‪.true‬‬

‫بما أن واحدًا من األجوبة كان ‪ true‬نفذ مباشرًة أمر الطباعة و لم ينظر حتى للشرط األخير‪.‬‬

‫مثال حول شرط بداخل شرط‪C++‬‬


‫نستطيع وضع الشروط بداخل بعضها‪ ,‬و يمكننا وضع العدد الذي نريده من الشروط‪.‬‬

‫في البرامج الفعلية يقوم المبرمج بوضع العديد من الشروط بداخل بعضها‪ ,‬و ذلك حسب الفكرة التي يريد‬

‫تنفيذها في برنامجه‪.‬‬

‫كمثال بسيط‪ ,‬لنفترض أننا نريد تحويل هذه الصورة إلى برنامج‪.‬‬
‫مثال‬

‫هنا قمنا بتجهيز متغير يمثل نوع الجنس إسمه ‪ isMale‬و قلنا إذا كانت قيمته ‪ true‬فهذا يعني أن الشخص هو‬

‫ذكر‪.‬‬

‫و إذا كانت تساوي ‪ false‬فهذا يعني أن الشخص هو أنثى‪.‬‬

‫باإلضافة لمتغير يمثل العمر إسمه ‪.age‬‬


‫‪Main.cpp‬‬

‫>‪#include <iostream‬‬

‫;‪using namespace std‬‬

‫)(‪int main‬‬

‫{‬
bool isMale = false;

int age = 14;

if( isMale == true )

cout << "Gender: male";

if( age <= 21 )

cout << "\nHe is a young boy";

else

cout << "Gender: female";

if( age <= 21 )

cout << "\nShe is a young girl";

return 0;

.‫سنحصل على النتيجة التالية عند التشغيل‬

Gender: female

She is a young girl


‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ isMale‬تساوي ‪true‬؟‬

‫فكان جواب الشرط ‪ , false‬فانتقل إلى جملة الشرط اإلفتراضية ‪ else‬لينفذ ما بداخلها‪.‬‬

‫أوًال‪ ,‬قام بتنفيذ دالة الطباعة الموجودة فيها‪ ,‬فطبع الجملة ‪.Gender: female‬‬

‫ثم وجد شرطًا آخر بداخل الشرط اإلفتراضي‪ ,‬فسأل نفسه التالي‪ :‬هل قيمة المتغير ‪ age‬أصغر أو تساوي ‪21‬؟‬

‫فكان جواب الشرط ‪ ,true‬فقام بتنفيذ دالة الطباعة الموجودة فيها‪ ,‬فطبع الجملة ‪.She is a young girl‬‬

‫‪ switch‬الجملة‪C++‬‬
‫تعريف الجملة ‪switch‬‬ ‫‪‬‬

‫وضع نفس األوامر ألكثر من حالة‬ ‫‪‬‬

‫وضع أكثر من إحتمال باستخدام العامل ‪...‬‬ ‫‪‬‬

‫‪ switch‬تعريف الجملة‬

‫‪ switch‬نستخدمها إذا كنا نريد إختبار قيمة متغير معين مع الئحة من اإلحتماالت نقوم نحن بوضعها‪ ,‬و إذا تساوت‬

‫هذه القيمة مع أي إحتمال وضعناه ستتنفذ األوامر التي وضعناها في هذا اإلحتمال فقط‪.‬‬
.case ‫كل إحتمال نضعه يسمى‬

:‫أنواع المتغيرات التي يمكن إختبار قيمتها باستخدام هذه الجملة هي‬

. - int - byte - short - char

‫طريقة تعريفها‬

:‫ الشكل األساسي هو التالي‬,‫يمكننا تعريفها بعدة أشكال‬

switch(expression) {

case value:
// Statements
break;

case value:
// Statements
break;

default:
// Statements
break;

The break and default keywords are optional


‫‪‬‬ ‫‪.‬تعني إختبر قيمة المتغير الموضوع بين قوسين ‪switch‬‬
‫‪‬‬ ‫‪.‬هنا يقصد بها المتغير الذي نريد إختبار قيمته ‪expression‬‬

‫‪: int - byte - short - char - String‬نوع المتغير الذي يسمح لنا بإختباره‬

‫‪‬‬ ‫‪.‬تعني أوامر ‪ Statements‬تعني قيمة‪ ,‬و ‪, value‬تعني حالة ‪case‬‬

‫تساوي هذه القيمة سيقوم بتنفيذ األوامر الموضوعة ‪ expression‬و يقصد من هذا كله‪ ,‬أنه في حال كانت قيمة الـ‬

‫‪ :.‬بعد النقطتين‬

‫مباشرًة ‪ switch‬لكي يخرج من الجملة ‪ break‬اآلن بعد تنفيذ جميع األوامر الموضوعة بعد النقطتين‪ ,‬يجب وضع‬

‫‪ switch.‬التالية الموجودة في الجملة ‪ case‬بدل أن ينتقل للـ‬

‫‪ switch.‬بداخل الجملة ‪ case‬نستطيع وضع العدد الذي نريده من الـ‬

‫‪.‬يجب أن يكونا من نفس النوع ‪ value‬و الـ ‪ expression‬إنتبه‪ :‬الـ‬

‫‪‬‬ ‫‪.‬و يمكننا أن ال نضعها أيضًا ‪ else,‬تعني إفتراضيًا و هي نفس فكرة الجملة ‪default‬‬

‫‪.‬و لذلك نضعها باآلخر ‪ switch‬موجودة في الجملة ‪ case‬هذه الجملة تنفذ فقط في حال لم تنفذ أي‬

‫ال حاجة لوضع ‪ break‬للحالة األخيرة ألن البرنامج سيخرج من الجملة ‪ switch‬في جميع األحوال‪.‬‬

‫ستفهم فكرة الجملة ‪ switch‬من خالل األمثلة و سنريك كيف يمكنك أن تنفذ نفس األوامر ألكثر من حالة‪ ,‬من‬

‫خالل األمثلة‪.‬‬

‫المثال األول‬

‫سنقوم باختبار قيمة المتغير ‪ x‬و الذي نوعه ‪.int‬‬


‫سنضع عدة حاالت و كل حالة تطبع شيء معين‪.‬‬
‫‪Main.cpp‬‬
‫>‪#include <iostream‬‬
‫;‪using namespace std‬‬
‫)(‪int main‬‬
‫{‬
‫;‪int x = 2‬‬
‫إختبر قيمة المتغير ‪switch( x ) // x‬‬
‫{‬
‫في حال كانت تساوي ‪ 1‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 1: //‬‬
‫;"‪cout << "x contain 1‬‬
‫;‪break‬‬
‫في حال كانت تساوي ‪ 2‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 2: //‬‬
‫;"‪cout << "x contain 2‬‬
‫;‪break‬‬
‫في حال كانت تساوي ‪ 3‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 3: //‬‬
‫;"‪cout << "x contain 3‬‬
‫;‪break‬‬
‫في حال كانت ال تساوي أي قيمة من القيم الموضوعة سيتم تنفيذ أمر ‪default: //‬‬
‫الطباعة الموضوع فيها‬
‫;"‪cout << "x contain a different value‬‬
‫}‬
‫;‪return 0‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪x contain 2‬‬

‫نالحظ أنه تم تنفيذ أمر الطباعة الموجود في الحالة الثانية ألن قيمة المتغير ‪ x‬تساوي ‪.2‬‬
‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪1‬؟‬

‫فكان جواب الشرط كال ( ‪ ,) false‬فانتقل إلى الحالة التي تليه‪.‬‬

‫ثم سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪2‬؟‬

‫فكان جواب الشرط نعم ( ‪ ,) true‬فقام بتنفيذ أمر الطباعة الموجود في هذه الحالة‪ ,‬و بعدها خرج من جملة‬

‫الـ ‪ switch‬بأكملها بسبب الجملة ‪.break‬‬

‫المثال الثاني‬

‫سنقوم باختبار قيمة المتغير ‪ x‬و الذي نوعه ‪.int‬‬

‫سنضع عدة حاالت و كل حالة تطبع شيء معين‪.‬‬


‫‪Main.cpp‬‬
‫>‪#include <iostream‬‬
‫;‪using namespace std‬‬
‫)(‪int main‬‬
‫{‬
‫;‪int x = 5‬‬
‫إختبر قيمة المتغير ‪switch( x ) // x‬‬
‫{‬
‫في حال كانت تساوي ‪ 1‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 1: //‬‬
‫;"‪cout << "x contain 1‬‬
‫;‪break‬‬
‫في حال كانت تساوي ‪ 2‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 2: //‬‬
‫;"‪cout << "x contain 2‬‬
‫;‪break‬‬
‫في حال كانت تساوي ‪ 3‬سيتم تنفيذ أمر الطباعة الموضوع فيها ‪case 3: //‬‬
‫;"‪cout << "x contain 3‬‬
‫;‪break‬‬
‫في حال كانت ال تساوي أي قيمة من القيم الموضوعة سيتم تنفيذ أمر ‪default: //‬‬
‫الطباعة الموضوع فيها‬
‫;"‪cout << "x contain a different value‬‬
‫}‬
‫;‪return 0‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪x contain a different value‬‬

‫نالحظ أن تم تنفيذ أمر الطباعة الموجود في الحالة اإلفتراضية ألن قيمة المتغير ‪ x‬ال تساوي أي قيمة من القيم‬

‫الموضوعة في الحاالت‪.‬‬

‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪1‬؟‬

‫فكان جواب الشرط كال ( ‪ ,) false‬فانتقل إلى الحالة التي تليه‪.‬‬

‫ثم سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪2‬؟‬

‫فكان جواب الشرط كال ( ‪ ,) false‬فانتقل إلى الحالة التي تليه‪.‬‬

‫ثم سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪3‬؟‬

‫فكان جواب الشرط كال ( ‪ ,) false‬فانتقل إلى الحالة التي تليه‪.‬‬

‫بما أنه لم يجد أي حالة تساوت فيها القيمة مع قيمة المتغير الذي يتم اختباره‪ ,‬قام بتنفيذ األوامر الموجودة في‬

‫الحالة اإلفتراضية ‪ ,default‬وعندما إنتهى من تنفيذ األوامر خرج من جملة الـ ‪ switch‬بأكملها‪.‬‬

‫وضع نفس األوامر ألكثر من حالة‬

‫إذا أردت وضع نفس األوامر ألكثر من حالة‪ ,‬عليك وضع الحاالت تحت بعضها‪ ,‬ثم كتابة األوامر‪ ,‬ثم وضع ‪.break‬‬
‫مثال‬

‫سنقوم باختبار قيمة المتغير ‪ x‬و الذي نوعه ‪.int‬‬

‫سنضع ثالث حاالت ينفذون نفس األوامر‪.‬‬


‫‪Main.cpp‬‬
‫>‪#include <iostream‬‬
‫;‪using namespace std‬‬
‫)(‪int main‬‬
‫{‬
‫;‪int x = 3‬‬
‫إختبر قيمة المتغير ‪switch( x ) // x‬‬
‫{‬
‫في حال كانت تساوي ‪ 1‬أو ‪ 2‬أو ‪ 3‬سيتم تنفيذ أمر الطباعة ‪case 1: //‬‬
‫‪case 2:‬‬
‫‪case 3:‬‬
‫;"‪cout << "x contain 1 or 2 or 3‬‬
‫;‪break‬‬
‫في حال كانت ال تساوي أي قيمة من القيم الموضوعة سيتم تنفيذ أمر ‪default: //‬‬
‫الطباعة الموضوع فيها‬
‫;"‪cout << "x contain a different value‬‬
‫}‬
‫;‪return 0‬‬
‫}‬

‫سنحصل على النتيجة التالية عند التشغيل‪.‬‬

‫‪x contain 1 or 2 or 3‬‬

‫نالحظ أنه تم تنفيذ أمر الطباعة الموضوع للحاالت الثالث األولى ألن قيمة ‪ x‬تساوي ‪.3‬‬
‫هنا سأل نفسه التالي‪ :‬هل قيمة المتغير ‪ x‬تساوي ‪ 1‬أو ‪ 2‬أو ‪3‬؟‬

‫فكان جواب الشرط نعم ( ‪ ,) true‬فقام بتنفيذ أمر الطباعة الموضوع لهذه الحاالت الثالث‪ ,‬و بعدها خرج من‬

‫جملة الـ ‪ switch‬بأكملها بسبب الجملة ‪.break‬‬

You might also like