المؤثرات العلائقية في C++
لا تسير جميع البرامج في تتابع مطرد من بدايتها إلي نهايتها , فالعديد منها تتوقف عن نقاط لتقرر في أي طريق تسير ( كما يفعل البشر أيضا ) , وذلك بناء علي تحقق شروط أو علي نتائج حسابات معينة . وتسمي عبارات البرنامج التي تسبب هذه القفزات في سير البرنامج عبارات تحكم control statements . ويوجد لدينا من هذه العبارات نوعان أساسيان , الدوارات loops , والعبارات الشرطية conditional operators ( أو القرارات decisions )
المؤثرات العلائقية
تستخدم المؤثرات العلائقية relational operators للمقارنة بين قيمتين , ويمكن أن يتم ذلك بالنسبة لأي نوع من المتغيرات , بل وللفئات المعرفة بواسطة المستخدم كما سنري في حينه . والمقارنة تكون إما بعلاقة التساوي , أو أكبر من , أو أصغر من ونتيجة إجراء المقارنة إما أن يكون الشرط متحققا ( true ) أو غير متحقق ( false ) .
ويبين برنامجا التالي استخدام هذه المؤثرات في المقارنة بين المتغيرات , فهو يقارن العدد المدخل بالعدد 10
Relat.cpp
relat.cpp
// relat.cpp
// demonstrates relational operators
#include <iostream.h>
void main()
{
int numb;
cout << "Enter a number: ";
cin >> numb;
cout << "numb<10 is " << (numb < 10) << endl;
cout << "numb>10 is " << (numb > 10) << endl;
cout << "numb==10 is " << (numb == 10) << endl;
}
وتكون نتيجة الخرج علي النحو التالي :
Enter a number 20
Numb <10 is 0
Numb > 10 is 1
Numb ==10 is 0
وهكذا تري أن نتيجة تظهر علي صورة 1 , أو 0 بحسب أن كانت العلاقة متحققة أو لا . وإليك القائمة الكاملة للمؤثرات العلائقية ومعناها :
المؤثر | معناه |
< > == != >= <= | أصغر من أكبر من يساوي لا يساوي أكبر من أو يساوي أصغر من أو يساوي |
وإليك الأن بعض القيم لمتغيرات , ثم تطبيق المؤثرات العلائقية عليها , وحاول أن تتوقع نتيجة المقارنة , ثم أنظر للإجابة ( نوصي بحجب الإجابة قبل البدء )
// assignment jane = 44;
// assignment statement harry = 12;
//false (jane == harry )
//true (harry <= jane)
//true (jane > harry )
//true (jane >=44)
//false (harry !=12)
//false (7 > harry)
الفرق بين المؤثرين =, و ==
نلفت انتباهك إلب الفرق الجوهري بين المؤثرين المذكورين , فعلامة التساوي مرة واحدة هي لتخصيص قيم للمتغيرات , أما مرتين فهي مؤثر علائقي يختبر شرط التسوي بين قيمتي متغيرين ] له نتيجتان فقط إما 0 أو 1 [ , والخلط بينهما موطن شائع لارتكاب الأخطاء ] خاصة في صياغة الشروط , والتي يستخدم لها المؤثر العلائقي == , وليس = [ .
وللأسف فهي من الأخطاء المنطقية التي لا يلاحظها محول الصياغة , وبالتالي تؤثر علي تنفيذ البرنامج دون إظهار أي’ إشارة لخطأ ما .
لنر الأن كيف تستخدم المؤثرات في تطبيقاتها العملية , وسوف نعرض للدوارات أو لا , ثم القرارات .
تعليقات
إرسال تعليق