جملة Break
جزء من قسم الأساسيات في رحلة R على Coddy. الدرس 40 من 78.
أحيانًا تحتاج إلى الخروج من حلقة مبكرًا، قبل أن تُكمل جميع تكراراتها. تتيح لك عبارة break إيقاف حلقة فورًا عند استيفاء شرط محدد.
for (i in 1:10) {
if (i == 5) {
break
}
print(i)
}الإخراج:
[1] 1
[1] 2
[1] 3
[1] 4تم تعيين الحلقة لتعمل من 1 إلى 10، ولكن عندما وصلت i إلى 5، أوقفت عبارة break الحلقة بالكامل. لاحظ أن 5 لم تتم طباعتها مطلقًا لأن break يخرج فورًا.
هذا مفيد بشكل خاص مع حلقات while عند البحث عن شيء ما:
num <- 1
while (TRUE) {
if (num * num > 20) {
break
}
num <- num + 1
}
print(num)المخرجات:
[1] 5هنا، while (TRUE) ستستمر عادةً إلى ما لا نهاية، لكن break يوقفها بمجرد أن find أول عدد يتجاوز مربعه 20. هذا النمط شائع عندما تحتاج إلى البحث حتى يتم استيفاء condition.
التحدي
سهلاقرأ number من limit من input. استخدم حلقة for للتكرار من 1 إلى limit، لكن أوقف loop مبكرًا باستخدام break عند مواجهة أول number يكون divisible بـ both 3 و7.
اطبع كل number قبل التحقق من condition. عند العثور على number يكون divisible بـ both 3 و7، اطبع ذلك number، ثم اخرج من loop.
بعد انتهاء loop، اطبع "Loop ended" باستخدام print().
على سبيل المثال، إذا كان input هو 30، فيجب أن يكون الناتج:
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10
[1] 11
[1] 12
[1] 13
[1] 14
[1] 15
[1] 16
[1] 17
[1] 18
[1] 19
[1] 20
[1] 21
[1] "Loop ended"يتوقف loop عند 21 لأنه أول number يكون divisible بـ both 3 و7 (21 = 3 × 7).
جرّب بنفسك
# اقرأ الإدخال
con <- file("stdin", "r")
limit <- as.integer(suppressWarnings(readLines(con, n = 1)))
# TODO: اكتب الكود الخاص بك أدناه
# استخدم حلقة for من 1 إلى limit
# اطبع كل رقم قبل التحقق من الشرط
# Break عندما تجد رقماً قابلاً للقسمة على كل من 3 و 7
# Hint: استخدم عامل %% للتحقق من القابلية للقسمة
# اطبع "Loop ended" بعد الحلقة
print("Loop ended")يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية (AND, OR)المعاملات المنطقية - الجزء الثاني (NOT)مراجعة - المنطق البسيطالمنطق المتجهي - الجزء الأولالمنطق المتجهي - الجزء الثاني2المتغيرات وأنواع البيانات
نوع البيانات الرقمينوع البيانات الصحيحنوع البيانات الحرفينوع البيانات المنطقيالتحقق من أنواع البياناتقواعد التسميةالقيم المفقودة: NAملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة Forحلقة Whileجملة Breakجملة Next (Continue)مراجعة - المضروب (Factorial)توليد المتتاليات (seq, :)الحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةقسمة الأعداد الصحيحة وباقي القسمةمعاملات الإسنادملخص - عمليات رياضية بسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
طباعة المخرجاتاستخدام Cat للمخرجاتالمخرجات مع المتغيراتقراءة المدخلات باستخدام readline()أساسيات تحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأتدرّب بنفسك: مترجم R عبر الإنترنت