Arduino/else

من موسوعة حسوب
مراجعة 12:06، 8 أكتوبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات) (أنشأ الصفحة ب'يسمح التعبير <code>if...else</code> الشرطي بالتحكم بشكل أوسع بتسلسل عملية التحقق من عدة شروط معينة عند...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يسمح التعبير if...else الشرطي بالتحكم بشكل أوسع بتسلسل عملية التحقق من عدة شروط معينة عند تنفيذ الشيفرة عوضًا عن التحقق من شرط وحيد عند استعمال التعبير if. ستُنفَّذ العبارة else (إن وجدت) إن لم يتحقق الشرط المعطى في العبارة if ( أي أعطى القيمة false). يمكن أيضًا استعمال العبارة else مع العبارة if بالشكل else if لإضافة شرط آخر للتحقق منه وبذلك يمكن إجراء عدة عمليات تحقق متتابعة في الوقت نفسه.

في حال وجود عدة شروط يراد التحقُّق منها، سيُتحقَّق بدايةً من الشرط الأول ثم من الشرط الذي يليه إن أعاد القيمة false وهكذا حتى يتحقَّق أحد الشروط (أي يعيد القيمة true). عند الوصول إلى الشرط المُتحقِّق، ستُنفَّذ الكتلة البرمجية المرتبطة به ثم سيتخطى البرنامج البنية if/else بأكملها إلى السطر الذي يليها. أمَّا في حال لم يتحقَّق أيُّ شرط، فستُنفَّذ الكتلة else الافتراضية إن وجت في النهاية.

انتبه إلى أنَّ الكتلة else if قد تُستخدَم مع الكتلة else التي توضع في النهاية أو بدونها والعكس بالعكس. عدد مرات استعمال الكتلة else if في أي تعبير شرطي غير محدود.

البنية العامة

if (الشرط 1)
{
  // افعل الشيء أ
}
else if (الشرط 2)
{
  // افعل الشيء ب
}
else
{
  // افعل الشيء ج
}

أمثلة

الشيفرة التالية هي جزءٌ من شيفرة نظام تحسس درجة الحرارة:

if (temperature >= 70)
{
  // خطر! أوقف النظام
}
else if (temperature >= 60 && temperature < 70)
{
  // تحذير! يجب إرسال إشارات لتنبيه المستخدم
}
else
{
  // أمان! أكمل تنفيذ المهام الاعتيادية
}

انظر أيضًا

  • العبارة break: تُستعمَل للخروج من الحلقات التكرارية، إذ تتخطى الشيفرة التي بعدها وشروط الحلقة المحددِّة وتخرج منها.
  • العبارة continue: تتخطى الشيفرة التي تليها في حلقة التكرار إلى عملية التحقق من التعبير الشرطي لتلك الحلقة ثم يُستأنَف عمل حلقة التكرار بشكل طبيعي.
  • الحلقة do...while: تعمل بنفس الطريقة التي تعمل بها الحلقة while باستثناء أنه يُتحقق من الشرط في نهاية الحلقة وليس في بدايتها.
  • الحلقة for: تُستعمَل لتكرار كتلة برمجية معينة من الشيفرة عددًا محدَّدًا من المرات.
  • العبارة goto:
  • الحلقة if...else:
  • العبارة return:
  • التعبير switch...case:
  • الحلقة while:

مصادر