المعاملات المنطقية - الجزء الأول
جزء من قسم Fundamentals في رحلة C++ على Coddy — الدرس 23 من 74.
تُستخدم المعاملات المنطقية للتحقق من مجموعات من المقارنات التي تُرجع true أو false.
على سبيل المثال، تحتوي العبارة التالية على مقارنتين:
هل 5 أكبر من 3 و أقل من 6؟
| المعامل | المعنى | مثال |
|---|---|---|
&& | و (And) - true إذا كانت جميع المعاملات true | a && b |
|| | أو (Or) - true إذا كان أي معامل true | a || b |
! | ليس (Not) - true إذا كان المعامل false | !a |
لنلقِ نظرة على بعض الأمثلة:
5 أكبر من 3 و 1 يساوي 1:
bool b1 = (5 > 3) && (1 == 1); // صحيحالشرح: جميع المعاملات هي true، لذا b1 ستحتوي على true (عملية and تكون true إذا كان كلا المعاملين true) .
5 لا يساوي 4 أو 5 يساوي 2:
bool b2 = !(5 == 4) || (5 == 2); // قيمته trueالشرح: المعامل الأول (5 != 4) هو true لذا فإن b2 هو أيضاً true (عملية or تكون true إذا كان أي من المعاملين true)
1 لا يساوي 1 أو خطأ (false):
bool b3 = !(1 == 1) || false; // تحتوي على falseالشرح: جميع المعاملات هي false، لذا فإن b3 سيحتوي على false (عملية or).
3 ليست أكبر من 4:
bool b4 = !(3 > 4); // تساوي trueالشرح: المعامل هو false، لذا b4 سيحتوي على true (عملية not).
5 ليس أكبر من 10 أو 5 ليس أكبر من 1:
bool b5 = !(5 > 10 || 5 > 1); // يحمل القيمة falseشرح: 5 > 10 || 5 > 1 هي true (أحد المعاملات هو true)، لذا فإن b5 في المجمل هي false (عملية not).
التحدي
مبتدئلقد أُعطيت كوداً. استبدل علامات الاستفهام للمتغيرات bool b1 و bool b2 بحيث يحمل bool b3 القيمة true.
خذ لحظة لتحليل الشرط وفكر في القيم التي ستجعله صحيحاً.
هناك العديد من الحلول الصحيحة!
ورقة مرجعية
تُستخدم المعاملات المنطقية للتحقق من مجموعات المقارنات التي تُرجع true أو false.
| المعامل | المعنى | مثال |
|---|---|---|
&& |
و (And) - تكون true إذا كانت جميع المعاملات true |
a && b |
|| |
أو (Or) - تكون true إذا كان أي من المعاملات true |
a || b |
! |
ليس (Not) - تكون true إذا كان المعامل false |
!a |
أمثلة:
bool b1 = (5 > 3) && (1 == 1); // true - both operands are truebool b2 = !(5 == 4) || (5 == 2); // true - first operand is truebool b3 = !(1 == 1) || false; // false - both operands are falsebool b4 = !(3 > 4); // true - negates false to truebool b5 = !(5 > 10 || 5 > 1); // false - negates true to falseجرّب بنفسك
#include <iostream>
int main() {
// اكتب الكود الخاص بك أدناه
bool b1 = ?;
bool b2 = ?;
bool b3 = b1 || b2;
// لا تغير السطر أدناه
std::cout << "b3 = " << b3;
return 0;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوص5المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالث