الخطوة (Stride)
جزء من قسم المنطق والتدفق في رحلة Swift على Coddy. الدرس 8 من 56.
يتحرك النطاق خطوة واحدة في كل مرة. عندما تريد حجم خطوة مختلفًا، أو تريد العد تنازليًا، استخدم stride.
نوعان: تتوقف stride(from:to:by:) قبل القيمة الثانية (نطاق نصف مفتوح)، بينما قد تتضمنها stride(from:through:by:) (نطاق مغلق):
for n in stride(from: 0, to: 10, by: 2) {
print(n)
}
// 0, 2, 4, 6, 8for n in stride(from: 10, through: 0, by: -2) {
print(n)
}
// 10, 8, 6, 4, 2, 0يجب أن تكون إشارة الوسيطة by: صحيحة: موجبة عند العد تصاعديًا، وسالبة عند العد تنازليًا. عند عدم التطابق، تُنفَّذ الحلقة صفر مرة.
التحدي
سهلاقرأ ثلاثة أعداد صحيحة (في ثلاثة أسطر): start وend وstep. قد تكون قيمة الخطوة موجبة أو سالبة. يكون النطاق شاملًا للطرفين (استخدم stride(from:through:by:)).
اطبع:
- القيم في stride، مفصولة باستخدام
, - عدد القيم الناتجة
بالنسبة إلى الإدخال 0 / 10 / 3، يكون الناتج:
0,3,6,9
4بالنسبة إلى الإدخال 10 / 0 / -2، يكون الناتج:
10,8,6,4,2,0
6جرّب بنفسك
let start = Int(readLine()!)!
let end = Int(readLine()!)!
let step = Int(readLine()!)!
// TODO: stride(from:through:by:)، اربط بفاصلة، ثم اطبع العدد
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق والتدفق
1النصوص بعمق
العد والفهارسحالة الأحرف وإزالة الفراغاتالبحث في النصوصتقسيم ودمج النصوصاستبدال النصوص الفرعيةمراجعة - التحقق من اسم المستخدم4المجموعات
إنشاء المجموعاتالاتحاد والتقاطعالطرح والفرق المتماثلالمجموعات الجزئية والشاملةمراجعة - تصفية الـ Tag7مشروع - متتبع العادات
نظرة عامة على المشروعتحديد كمكتمل2النطاقات والخطوات
المغلقة مقابل نصف المفتوحةالخطوة (Stride)دوال النطاقاتالنطاقات في Switchملخص - شبكة التقويم5الدوال من الرتبة العليا - الجزء الأول
MapFilterReduceربط Map و Filter و Reduceمراجعة - إحصائيات الكلماتتدرّب بنفسك: Playground لـ Swift