logo

العامل الشرطي في C

يُعرف العامل الشرطي أيضًا باسم a عامل ثلاثي . العبارات الشرطية هي عبارات اتخاذ القرار التي تعتمد على مخرجات التعبير. ويمثله رمزان، أي '؟' و ':'.

بما أن العامل الشرطي يعمل على ثلاثة معاملات، فإنه يُعرف أيضًا باسم العامل الثلاثي.

سلوك العامل الشرطي مشابه لـ ' إذا كان غير ذلك البيان كبيان 'إذا كان آخر' هو أيضًا بيان اتخاذ القرار.

بناء جملة عامل شرطي

 Expression1? expression2: expression3; 

ويرد أدناه التمثيل التصويري لبناء الجملة أعلاه:

العامل الشرطي في C

معنى بناء الجملة أعلاه.

  • في بناء الجملة أعلاه، التعبير 1 هو شرط منطقي يمكن أن يكون قيمة صحيحة أو خاطئة.
  • إذا أدى التعبير 1 إلى قيمة حقيقية، فسيتم تنفيذ التعبير 2.
  • يُقال إن التعبير 2 صحيح فقط عندما يُرجع قيمة غير الصفر.
  • إذا قام التعبير 1 بإرجاع قيمة خاطئة فسيتم تنفيذ التعبير 3.
  • يُقال أن التعبير 3 خطأ فقط عندما يُرجع قيمة صفر.

دعونا نفهم العامل الثلاثي أو الشرطي من خلال مثال.

 #include int main() { int age; // variable declaration printf('Enter your age'); scanf('%d',&age); // taking user input for age variable (age>=18)? (printf('eligible for voting')) : (printf('not eligible for voting')); // conditional operator return 0; } 

في الكود أعلاه، نأخذ المدخلات على أنها 'عمر' المستخدم. بعد أخذ المدخلات، قمنا بتطبيق الشرط باستخدام عامل شرطي. في هذه الحالة، نقوم بالتحقق من عمر المستخدم. إذا كان عمر المستخدم أكبر من أو يساوي 18 عامًا، فسيتم تنفيذ البيان 1، أي (printf('مؤهل للتصويت')) وإلا، سيتم تنفيذ البيان 2، أي (printf('غير مؤهل للتصويت') ).

دعونا نلاحظ إخراج البرنامج أعلاه.

إذا قدمنا ​​عمر المستخدم أقل من 18 عامًا، فسيكون الناتج:

العامل الشرطي في C

إذا ذكرنا عمر المستخدم أكبر من 18 عامًا، فسيكون الناتج:

العامل الشرطي في C

كما نلاحظ من المخرجين أعلاه أنه إذا كان الشرط صحيحا، فسيتم تنفيذ العبارة 1؛ وإلا سيتم تنفيذ البيان 2.

حتى الآن، لاحظنا كيف يقوم العامل الشرطي بالتحقق من الشرط وبناءً على الشرط، فإنه ينفذ البيانات. الآن، سوف نرى كيف يتم استخدام العامل الشرطي لتعيين القيمة لمتغير.

ماذا يعني xd

دعونا نفهم هذا السيناريو من خلال مثال.

 #include int main() { int a=5,b; // variable declaration b=((a==5)?(3):(2)); // conditional operator printf('The value of 'b' variable is : %d',b); return 0; } 

في الكود أعلاه، أعلنا عن متغيرين، أي 'a' و'b'، وقمنا بتعيين قيمة 5 للمتغير 'a'. بعد التصريح، نقوم بتعيين قيمة للمتغير 'b' باستخدام العامل الشرطي. إذا كانت قيمة 'أ' تساوي 5، فسيتم تعيين 'ب' بقيمة 3 وإلا 2.

انتاج |

العامل الشرطي في C

يوضح الناتج أعلاه أن قيمة المتغير 'b' هي 3 لأن قيمة المتغير 'a' تساوي 5.

كما نعلم أن سلوك العامل الشرطي و'if-else' متشابهان ولكن لديهما بعض الاختلافات. دعونا ننظر إلى خلافاتهم.

  • العامل الشرطي عبارة عن عبارة برمجة واحدة، في حين أن عبارة 'if-else' عبارة عن كتلة برمجة تقع فيها العبارات بين قوسين.
  • يمكن أيضًا استخدام العامل الشرطي لتعيين قيمة للمتغير، في حين لا يمكن استخدام عبارة 'if-else' لغرض التعيين.
  • ليس من المفيد تنفيذ العبارات عندما تكون العبارات متعددة، في حين أن عبارة 'if-else' تكون أكثر ملاءمة عند تنفيذ عبارات متعددة.
  • يعد عامل التشغيل الثلاثي المتداخل أكثر تعقيدًا ولا يمكن تصحيحه بسهولة، في حين أن عبارة 'if-else' المتداخلة سهلة القراءة والصيانة.