الفرق بين المراجعتين ل"Arduino/if"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'يتحقَّق التعبير <code>if</code> الشرطي من شرط معيَّن وينفِّذ الكتلة البرمجية المكتوبة ضمنه إن كان م...')
 
ط (إضافة محتويات الصفحة.)
 
سطر 1: سطر 1:
 +
<noinclude>{{DISPLAYTITLE:التعبير <code>if</code> الشرطي في  أردوينو}}</noinclude>
 
يتحقَّق التعبير <code>if</code> الشرطي من شرط معيَّن وينفِّذ الكتلة البرمجية المكتوبة ضمنه إن كان محقَّقًا (أي كانت قيمته <code>true</code>).
 
يتحقَّق التعبير <code>if</code> الشرطي من شرط معيَّن وينفِّذ الكتلة البرمجية المكتوبة ضمنه إن كان محقَّقًا (أي كانت قيمته <code>true</code>).
  
سطر 7: سطر 8:
 
   // الكتلة البرمجية المراد تنفيذها عند تحقق الشرط
 
   // الكتلة البرمجية المراد تنفيذها عند تحقق الشرط
 
}
 
}
</syntaxhighlight>
+
</syntaxhighlight>إنَّ الشرط <code>condition</code> هو تعبيرٌ منطقيٌّ أي قيمته إمَّا <code>true</code> أو <code>false</code>.
 
 
== المعاملات ==
 
 
 
=== <code>condition</code> ===
 
تعبيرٌ منطقيٌّ أي قيمته إمَّا <code>true</code> أو <code>false</code>.
 
  
 
==أمثلة==
 
==أمثلة==
سطر 45: سطر 41:
  
 
==انظر أيضًا==
 
==انظر أيضًا==
*العبارة <code>[[Arduino/break|break]]</code>: تُستعمَل للخروج من الحلقات التكرارية، إذ تتخطى الشيفرة التي بعدها وشروط الحلقة المحددِّة وتخرج منها.
+
*الكلمة المفتاحية <code>[[Arduino/break|break]]</code>: تُستعمَل للخروج من الحلقات التكرارية، إذ تتخطى الشيفرة التي بعدها وشروط الحلقة المحددِّة وتخرج منها.
*الحلقة <code>do...while</code>:
+
*الكلمة المفتاحية <code>[[Arduino/continue|continue]]</code>: تتخطى الشيفرة التي تليها في حلقة التكرار إلى عملية التحقق من التعبير الشرطي لتلك الحلقة ثم يُستأنَف عمل حلقة التكرار بشكل طبيعي.
*العبارة <code>[[Arduino/else|else]]</code>:
+
*الحلقة <code>[[Arduino/dowhile|do...while]]</code>: تعمل بنفس الطريقة التي تعمل بها الحلقة <code>[[Arduino/while|while]]</code> باستثناء أنه يُتحقق من الشرط في نهاية الحلقة وليس في بدايتها.
*الحلقة <code>[[Arduino/for|for]]</code>:
+
*الكلمة المفتاحية <code>[[Arduino/else|else]]</code>: يسمح بالتحكم بشكل أوسع بتسلسل عملية التحقق من عدة شروط معينة عند تنفيذ الشيفرة عوضًا عن التحقق من شرط وحيد عند استعمال التعبير <code>[[Arduino/if|if]]</code>.
*العبارة <code>[[Arduino/goto|goto]]</code>:
+
*الحلقة <code>[[Arduino/for|for]]</code>: تُستعمَل لتكرار كتلة برمجية معينة من الشيفرة عددًا محدَّدًا من المرات.
*العبارة <code>[[Arduino/return|return]]</code>:
+
*الكلمة المفتاحية <code>[[Arduino/goto|goto]]</code>: ينقل البرنامج إلى موضع معين ضمن الشيفرة.
*التعبير <code>[[Arduino/switch|switch...case]]</code>:
+
*الكلمة المفتاحية <code>[[Arduino/return|return]]</code>: تقاطع المفتاحية تنفيذ أيَّ دالةٍ وتعيد قيمةً من الدالة إلى من استدعاها إن حدُّدت.
*الحلقة <code>[[Arduino/while|while]]</code>:
+
*التعبير <code>[[Arduino/switchcase|switch...case]]</code>: يتحقَّق -كما في <code>[[Arduino/if|if]]</code>- من قيمة محدَّدة بطريقة تسمح للمبرمج بتحديد عدة شيفرات تُنفَّذ إحداها بناءً على تلك القيمة المفحوصة.
 +
*الحلقة <code>[[Arduino/while|while]]</code>: تكرِّر تنفيذ الكتلة البرمجية التي ضمنها بشكل مستمر ولا نهائي ما دامت قيمة الشرط المنطقي المعطى هي <code>true</code> ومتى ما أصبحت قيمة الشرط المنطقي <code>false</code>، تتوقف الحلقة وتخرج.
 
==مصادر==
 
==مصادر==
*[https://www.arduino.cc/reference/en/language/structure/control-structure/if/ صفحة التعبير if في توثيق أردوينو الرسمي.]
+
*[https://www.arduino.cc/reference/en/language/structure/control-structure/if/ صفحة التعبير if الشرطي في توثيق أردوينو الرسمي.]
 +
[[تصنيف: Arduino]]
 +
[[تصنيف: Arduino Control Structure]]

المراجعة الحالية بتاريخ 05:31، 9 أكتوبر 2018

يتحقَّق التعبير if الشرطي من شرط معيَّن وينفِّذ الكتلة البرمجية المكتوبة ضمنه إن كان محقَّقًا (أي كانت قيمته true).

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

if (condition)
{
  // الكتلة البرمجية المراد تنفيذها عند تحقق الشرط
}

إنَّ الشرط condition هو تعبيرٌ منطقيٌّ أي قيمته إمَّا true أو false.

أمثلة

مثالٌ على استعمال التعبير if الشرطي بصيغ متعددة:

if (x > 120) digitalWrite(LEDpin, HIGH);

if (x > 120)
digitalWrite(LEDpin, HIGH);

if (x > 120){ digitalWrite(LEDpin, HIGH); }

if (x > 120){
  digitalWrite(LEDpin1, HIGH);
  digitalWrite(LEDpin2, HIGH);
}

ملاحظات وتحذيرات

قد تتطلب التعابير المعطاة للشرط condition استعمال أحد المعاملات المذكورة فيما يلي.

معاملات الموازنة

x == y (y تساوي x)
x != y (y لا تساوي x)
x <  y (y أصغر تمامًا من x)
x >  y (y أكبر تمامًا من x)
x <= y (y أصغر أو تساوي x)
x >= y (y أكبر أو تساوي x)

كن حذرًا من استعمال إشارة تساوي واحدة فقط عن طريق الخطأ (مثل if (x = 10)‎)، إذ تمثِّل إشارة التساوي الواحدة معامل إسناد وتضبط -كما موضح في المثال- قيمة المتغير x إلى القيمة 10. عوضًا عن ذلك، يجب استعمال إشارتا تساوي (مثل if (x == 10)‎) اللتان تمثلان في هذه الحالة معامل موازنة وتتحققان إذا كانت قيمة المتغير x تساوي 10 أم لا. ستكون قيمة التعبير الأخير true إن كانت قيمة المتغير x تساوي 10 بينما تكون قيمة تعبير الإسناد السابق هي true دومًا.

تفسير كيفية تقييم لغة C التعبير if (x = 10)‎ بالقيمة true دومًا هي أنَّ C تُسنٍد القيمة 10 إلى المتغير x (تذكَّر أنَّ إشارة التساوي المفردة هي معامل إسناد وقد استُعمِلت خطأً). يقيم التعبير if الشرطي بعدئذٍ القيمة 10 -التي أصبحت قيمة المتغير x- على أنَّها true دومًا لأنَّ التقييم المنطقي لأي عدد غير صفري هو true دومًا. بناءً على ذلك، سيُقيَّم التعبير if (x = 10)‎ الشرطي على أنَّه محققٌ وستخالف النتيجة التوقعات المرجوة آنذاك. أضف إلى ذلك أنَّ المتغير x ستُضبَط قيمته إلى 10 وهو أمر غير مرغوب أيضًا

انظر أيضًا

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

مصادر