Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

جملة Unless

جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 25 من 88.

تقدم لغة روبي (Ruby) طريقة فريدة للتعبير عن الشروط عندما تريد تشغيل كود برمجياً فقط إذا كان هناك شيء ما ليس صحيحاً. تعتبر جملة unless في الأساس عكس جملة if.

مع if، يتم تشغيل الكود عندما يكون الشرط صحيحاً (true). ومع unless، يتم تشغيل الكود عندما يكون الشرط خاطئاً (false):

logged_in = false

unless logged_in
  puts "Please log in to continue"
end

هذا يعادل كتابة if !logged_in، ولكن unless غالباً ما يُقرأ بشكل طبيعي أكثر. فكر في الأمر على أنه "افعل هذا ما لم يكن هذا الشرط صحيحاً".

يمكنك أيضًا استخدام unless مع else:

age = 20

unless age < 18
  puts "Access granted"
else
  puts "Access denied"
end

ومع ذلك، عندما تحتاج إلى كتلة else، فإن استخدام if عادة ما يكون أكثر وضوحاً. تتألق جملة unless عندما يكون لديك شرط سلبي بسيط بدون مسار بديل. اختر أيهما يجعل كودك أسهل في القراءة من نظرة سريعة.

challenge icon

التحدي

سهل

لقد تم تزويدك بالمتغيرات التالية:

has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false

استخدم عبارات unless لتقييم كل سيناريو أدناه. اطبع الرسالة المحددة فقط عندما يكون الشرط خاطئاً (وهو الوقت الذي تنفذ فيه unless كتلتها البرمجية).

  1. ما لم تكن has_ticket هي true، اطبع Please purchase a ticket
  2. ما لم تكن is_vip هي true، اطبع VIP access required
  3. ما لم تكن items_in_cart أكبر من 0، اطبع Your cart is empty
  4. ما لم تكن battery_level أكبر من 20، اطبع Low battery warning
  5. ما لم تكن is_charging هي true أو battery_level أكبر من 50، اطبع Please charge your device

يجب أن تظهر كل رسالة في سطر خاص بها. اطبع فقط الرسائل الخاصة بالشروط التي تُفعل كتلة unless.

ورقة مرجعية

تقوم جملة unless بتشغيل الكود عندما يكون الشرط false، مما يجعلها عكس جملة if:

logged_in = false

unless logged_in
  puts "Please log in to continue"
end

هذا يعادل if !logged_in، ولكنه غالباً ما يُقرأ بشكل طبيعي أكثر.

يمكنك استخدام unless مع else:

age = 20

unless age < 18
  puts "Access granted"
else
  puts "Access denied"
end

ومع ذلك، يُفضل استخدام unless للحالات الشرطية المنفية البسيطة بدون كتلة else. عندما تحتاج إلى مسار بديل، عادة ما تكون if أكثر وضوحاً.

جرّب بنفسك

# المتغيرات معرفة مسبقاً لك
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false

# المهام المطلوبة: اكتب الكود الخاص بك أدناه
# استخدم جمل unless للتحقق من كل شرط وطباعة الرسالة المناسبة
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات