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