حلقة Until
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 45 من 88.
تُعدّ حلقة until عكس حلقة while. فبدلاً من التشغيل طالما أن الشرط صحيح، فإنها تعمل حتى يصبح الشرط صحيحاً. فكر فيها على أنها "استمر حتى يحدث هذا".
count = 1
until count > 3
puts count
count += 1
endيُنتج هذا 1، 2، 3. تستمر الحلقة طالما أن count > 3 هي false. بمجرد أن تصبح count تساوي 4، يصبح الشرط true، وتتوقف الحلقة.
قارن هذا بحلقة while المكافئة:
# هاتان الحلقتان تقومان بنفس الشيء:
while count <= 3 # يتم التشغيل طالما أن هذا صحيح (TRUE)
until count > 3 # يتم التشغيل حتى يصبح هذا صحيحاً (TRUE)يمكن لحلقة until أن تجعل كودك أكثر قابلية للقراءة عندما تنتظر حدوث شيء ما. إليك مثال على العد التنازلي:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"يقوم هذا بالعد التنازلي من 5 إلى 1، ثم يطبع "Liftoff!" عندما تصل num إلى 0. اختر until عندما تجعل نيتك أكثر وضوحاً، خاصة عندما تنتظر حدوث شرط معين.
التحدي
سهلاقرأ رقماً n من المدخلات. استخدم حلقة until لطباعة جميع الأرقام من 1 إلى n، كل رقم في سطر مستقل. بعد الوصول إلى n، اطبع Done! في سطر جديد.
يجب أن تستمر الحلقة حتى يتجاوز العداد n.
ستكون المدخلات عبارة عن عدد صحيح واحد يمثل الرقم المستهدف.
على سبيل المثال، إذا كانت المدخلات 4، يجب أن تكون المخرجات:
1
2
3
4
Done!إذا كانت المدخلات 6، يجب أن تكون المخرجات:
1
2
3
4
5
6
Done!ورقة مرجعية
تستمر حلقة until في العمل حتى يصبح الشرط صحيحاً (عكس while):
count = 1
until count > 3
puts count
count += 1
end
# المخرجات: 1, 2, 3مقارنة مع حلقة while:
while count <= 3 # تعمل طالما أن هذا صحيح (TRUE)
until count > 3 # تعمل حتى يصبح هذا صحيحاً (TRUE)مثال على العد التنازلي:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"جرّب بنفسك
# قراءة الرقم المستهدف
n = gets.to_i
# تهيئة العداد
counter = 1
# TODO: اكتب الكود الخاص بك أدناه
# استخدم حلقة until لطباعة الأرقام من 1 إلى n
# يجب أن تستمر الحلقة حتى يتجاوز العداد قيمة n
# طباعة "Done!" بعد الحلقة
puts "Done!"يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ