Zig Academy · درس

‏if بوصفها تعليمة وتعبيراً

أنشئوا تفرعاً وأعيدوا القيم في صيغة واحدة

الدرس 1 من 413 خطوة

‏if بوصفها تعليمة وتعبيراً درس مجاني في Zig Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Zig Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Zig Academy 4 دروس في المجموع.

التفرع باستخدام if

استخدم if للاختيار بين مسارين. ينفّذ Zig الكتلة الأولى عندما يكون الشرط صحيحًا، ويتجاوزها خلاف ذلك. الأمر بسيط وواضح. 🌿

if (score > 50) {
    std.debug.print("Pass\n", .{});
}

يجب أن تكون الشروط من النوع bool

يجب أن يكون الشرط بين القوسين قيمة bool فعلية. يرفض Zig الأعداد الصحيحة والمؤشرات هنا، لذلك لا توجد تخمينات حول كون القيمة صادقة أو كاذبة.

إضافة else

استخدم if مع else لمعالجة الحالة الخاطئة. تُنفّذ إحدى الكتلتين بالضبط، فلا تُنفّذ كلتاهما ولا تُترك الحالتان دون تنفيذ.

if (ready) {
    start();
} else {
    wait();
}

تسلسل else if

رتّب الاختبارات باستخدام else if لاختيار فرع واحد من عدة فروع. يفحصها Zig من الأعلى إلى الأسفل ويتوقف عند أول تطابق.

if (n < 0) {
    sign = -1;
} else if (n > 0) {
    sign = 1;
} else {
    sign = 0;
}

if تعبير

يمكن لـ if في Zig أن ينتج قيمة أيضًا. يعيد كلا الفرعين شيئًا ما، ويصبح if كله تلك النتيجة التي يمكنك إسنادها.

const max = if (a > b) a else b;

يجب أن يتطابق الفرعان

عندما ينتج if قيمة، يجب أن يشترك الذراعان في نوع واحد. ويوفّق المصرّف بينهما لتكون للنتيجة نوع واحد متوقع.

لا حاجة إلى ternary

لا يحتوي Zig على معامل ternary. ويؤدي الشكل التعبيري لـ if هذا الدور بوضوح، مع الإبقاء على طريقة واحدة لكتابة الاختيار.

فك تغليف قيمة اختيارية

يمكن لـ if اختبار قيمة اختيارية وفك تغليفها في خطوة واحدة. ويحتوي الاسم الملتقط على القيمة الداخلية فقط عندما تكون موجودة.

if (maybe_user) |user| {
    greet(user);
}

التقاط الأخطاء باستخدام if

يمكن لـ if أيضًا فصل اتحاد أخطاء. إذ يستطيع فرع else التقاط قيمة الخطأ عندما يفشل التعبير.

if (parse(text)) |value| {
    use(value);
} else |err| {
    report(err);
}

الأقواس المعقوفة مطلوبة

يتطلب Zig دائمًا وضع أجسام if بين أقواس معقوفة، حتى عند وجود سطر واحد فقط. ويزيل ذلك فئة كاملة من أخطاء العبارات المعلّقة.

الإرجاع المبكر

من الأنماط الشائعة استخدام return مبكرًا داخل if. عالج الحالة الخاصة أولًا، ثم دع بقية الدالة تُقرأ مباشرة إلى الأسفل.

if (list.len == 0) return;

تحقق سريع

تريد أن يحتوي max على الأكبر بين a وb في سطر واحد. أي صيغة من Zig تحقق ذلك؟

مراجعة

تعرّفت إلى if بوصفه عبارة وتعبيرًا: شروط bool، وelse وelse if، وفروعًا تعيد قيمًا، والتقاط القيم الاختيارية أو الأخطاء. 🎯

البدء مجانًا

تعلم Zig مع معلم ذكاء اصطناعي — مجانًا

اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.

الدورات
30
الدروس
120

الأسئلة الشائعة

هل درس «‏if بوصفها تعليمة وتعبيراً» مجاني؟

نعم — نص درس «‏if بوصفها تعليمة وتعبيراً» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Zig Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Zig Academy 4 دروس في المجموع.

ماذا ستتعلم في «‏if بوصفها تعليمة وتعبيراً»؟

أنشئوا تفرعاً وأعيدوا القيم في صيغة واحدة تتمرن على Zig Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Zig Academy؟

لا تُشترط خبرة سابقة. Zig Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «‏if بوصفها تعليمة وتعبيراً»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Zig Academy هذا؟

نعم. كل درس في Zig Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. ‏if بوصفها تعليمة وتعبيراً
  2. حلقات while وتعبيرات continue
  3. حلقات for على النطاقات والعناصر
  4. ‏break وcontinue والحلقات ذات التسميات
← العودة إلى Zig Academy