العلاقات والمنطق
المقارنات و&& و||
العلاقات والمنطق درس مجاني في C Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في C Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة C Academy 4 دروس في المجموع.
مقارنة القيم
تقارن العوامل العلائقية بين قيمتين وتنتج قيمة منطقية: 1 للصواب و0 للخطأ.
<أصغر من>أكبر من<=أصغر من أو يساوي>=أكبر من أو يساوي
#include <stdio.h>
int main(void) {
printf("3 < 5 = %d\n", 3 < 5);
printf("3 > 5 = %d\n", 3 > 5);
return 0;
}التساوي وعدم التساوي
استخدم == لاختبار التساوي و!= لاختبار عدم التساوي. لا تخلط بين == وعامل الإسناد =.
#include <stdio.h>
int main(void) {
int a = 4, b = 4;
printf("a == b = %d\n", a == b);
printf("a != b = %d\n", a != b);
return 0;
}القيم المنطقية أعداد صحيحة
لا تحتوي C افتراضيًا على نوع منفصل للقيم المنطقية. تنتج المقارنة قيمًا من النوع int هي 1 أو 0. وتُعدّ أي قيمة غير صفرية صحيحة داخل الشرط.
#include <stdio.h>
int main(void) {
int result = (10 > 2);
printf("result = %d\n", result);
return 0;
}و AND المنطقي
يكون العامل && صحيحًا فقط عندما يكون كلا المعاملين صحيحًا.
#include <stdio.h>
int main(void) {
int age = 25;
if (age > 18 && age < 65)
printf("Working age\n");
return 0;
}أو OR المنطقي
يكون العامل || صحيحًا عندما يكون معامل واحد على الأقل صحيحًا.
#include <stdio.h>
int main(void) {
int day = 6;
if (day == 6 || day == 7)
printf("Weekend\n");
return 0;
}النفي NOT المنطقي
يعكس العامل ! قيمة منطقية. فقيمة !0 هي 1، وقيمة !5 هي 0.
#include <stdio.h>
int main(void) {
int loggedIn = 0;
if (!loggedIn)
printf("Please log in\n");
return 0;
}التقييم بالتوقّف القصير
تستخدم C التقييم بالتوقّف القصير: مع && يُتخطّى الجانب الأيمن إذا كان الأيسر خطأً؛ ومع || يُتخطّى إذا كان الأيسر صحيحًا.
#include <stdio.h>
int main(void) {
int x = 0;
if (x != 0 && 10 / x > 1)
printf("safe\n");
else
printf("division skipped\n");
return 0;
}دمج الشروط
يمكنك مزج العوامل العلائقية والمنطقية للتعبير عن شروط غنية.
#include <stdio.h>
int main(void) {
int score = 75;
if (score >= 50 && score < 80)
printf("Pass\n");
return 0;
}نفي المقارنات
يمكن أن يحيط ! بمقارنة كاملة. فالتعبير !(a == b) يماثل a != b.
#include <stdio.h>
int main(void) {
int a = 3, b = 5;
printf("%d\n", !(a == b));
return 0;
}تسلسل المقارنات ليس كالرياضيات
على خلاف الرياضيات، لا يعني 1 < x < 10 ما تتوقعه. إذ يُقيّم من اليسار إلى اليمين بوصفه مقارنات. استخدم بدلًا منه x > 1 && x < 10.
#include <stdio.h>
int main(void) {
int x = 50;
if (x > 1 && x < 10)
printf("in range\n");
else
printf("out of range\n");
return 0;
}مثال على اتخاذ قرار
ادمج كل ما سبق لتصنيف عدد.
#include <stdio.h>
int main(void) {
int n = -4;
if (n > 0)
printf("positive\n");
else if (n < 0)
printf("negative\n");
else
printf("zero\n");
return 0;
}اختبار سريع
اختبر فهمك للعوامل العلائقية والمنطقية.
مراجعة: العوامل العلائقية والمنطقية
تعلّمت كيفية مقارنة الشروط ودمجها.
- تعطي العوامل العلائقية
1أو0 - يختبر
== !=التساوي، فلا تخلط أبدًا بين==و= - تجمع
&& || !القيم المنطقية - قد يؤدي التقييم بالتوقّف القصير إلى تخطّي المعامل الثاني
- اربط الشروط باستخدام
&&الصريح
الأسئلة الشائعة
هل درس «العلاقات والمنطق» مجاني؟
نعم — نص درس «العلاقات والمنطق» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة C Academy، انتقل إلى CoddyKit PRO. تتضمن دورة C Academy 4 دروس في المجموع.
ماذا ستتعلم في «العلاقات والمنطق»؟
المقارنات و&& و|| تتمرن على C Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ C Academy؟
لا تُشترط خبرة سابقة. C Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.
كم من الوقت يستغرق درس «العلاقات والمنطق»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس C Academy هذا؟
نعم. كل درس في C Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- المعاملات الحسابية
- العلاقات والمنطق
- الإسناد والزيادة
- أولوية المعاملات