القيم المنطقية (Booleans)
جزء من قسم Fundamentals في رحلة C على Coddy — الدرس 9 من 63.
في لغة C، لا يوجد نوع بيانات منطقي (boolean) مدمج كما هو الحال في اللغات الأخرى. بدلاً من ذلك، تستخدم لغة C الأعداد الصحيحة (integers) لتمثيل القيم المنطقية.
عرّف عدداً صحيحاً لتمثيل قيمة منطقية (boolean):
int isTrue = 1; // يمثل true
int isFalse = 0; // يمثل falseفي لغة C، تُعتبر أي قيمة غير صفرية "true" بينما يُعتبر الصفر "false".
استخدم هذه القيم المنطقية في الشروط:
int age = 25;
int isAdult = (age > 17);
printf("Is adult? %d\n", isAdult);Output:
Is adult? 1يمكنك أيضاً استخدام عامل التشغيل >= (أكبر من أو يساوي) في الشروط. على سبيل المثال، age >= 18 تكون صحيحة إذا كانت age تساوي 18 أو أكثر، وخاطئة خلاف ذلك:
int age = 18;
int isAdult = (age >= 18);
printf("Is adult? %d\n", isAdult);Output:
Is adult? 1بدءاً من C99، يمكنك تضمين ترويسة <stdbool.h> لاستخدام النوع المنطقي (boolean):
#include <stdbool.h>
bool isTrue = true; // يتم الآن استخدام نوع منطقي فعلي
bool isFalse = false; // استخدام ثوابت محددة مسبقاًلكن ستتعلم المزيد عن استخدام القيم المنطقية (booleans) لاحقاً خلال رحلتك
التحدي
سهلقم بتعيين المتغير age إلى 16. ثم، قم بإنشاء برنامج يتحقق مما إذا كان الشخص كبيراً بما يكفي للقيادة (العمر 18 أو أكبر).
قم بتخزين النتيجة (إما 0 لـ false أو 1 لـ true) في متغير يسمى canDrive، واطبع كلاً من العمر والنتيجة.
ورقة مرجعية
تستخدم لغة C الأعداد الصحيحة لتمثيل القيم المنطقية (boolean):
int isTrue = 1; // يمثل true
int isFalse = 0; // يمثل falseتُعتبر أي قيمة غير صفرية "true" بينما تُعتبر القيمة صفر "false".
استخدام القيم المنطقية في الشروط:
int age = 25;
int isAdult = (age > 17);
printf("Is adult? %d\n", isAdult);عوامل المقارنة الشائعة المستخدمة مع القيم المنطقية:
a > b // أكبر من
a >= b // أكبر من أو يساوي
a < b // أصغر من
a <= b // أصغر من أو يساوي
a == b // يساوي
a != b // لا يساويبالنسبة لمعيار C99 وما بعده، قم بتضمين <stdbool.h> لاستخدام النوع المنطقي الفعلي:
#include <stdbool.h>
bool isTrue = true;
bool isFalse = false;جرّب بنفسك
#include <stdio.h>
int main() {
// كودك هنا:
int age = ;
// كودك هنا:
int canDrive = ;
printf("Age: %d\n", age);
printf("Can drive? %d\n", canDrive);
return 0;
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
2المتغيرات
أنواع البياناتالأعداد الصحيحة (Integer)الأعداد العشرية (Float - Double)المحارف (Characters)القيم المنطقية (Booleans)الثوابتأساسيات printfقواعد تسمية المتغيراتتحويل الأنواع (Type Casting) - الجزء 1تحويل الأنواع (Type Casting) - الجزء 2تحدي المراجعة3المعاملات
المعاملات الحسابيةمعامل باقي القسمةالزيادة والنقصانمعاملات الإسنادالمعاملات العلائقيةالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيالمعاملات المنطقية - الجزء الثالثتحدي المراجعة