درس ۱۲ روبی: معرفی تکرار
یادتان هست در درس ۸ برنامه پر از بلوکهای یکسان شد؟ حالا جادوی «تکرار» از راه میرسد: یک بلوک بهجای چند بلوک.
هدف درس ۱۲
در درس ۱۲ بلوک ⟳ تکرار معرفی میشود. ایده ساده است: بهجای اینکه پنج بار پشت سر هم ⬆️ جلو بگذاریم، یک بار «تکرار ۵» میگذاریم و ⬆️ جلو را داخلش قرار میدهیم. ربات روبی دقیقاً همان مسیر را میرود، اما برنامه خیلی کوتاهتر شده.
هدف این است که کودک بفهمد تکرار چطور برنامه را کوتاهتر و خواناتر میکند؛ یکی از مهارتهایی که در طرح درس روبی برای پایان ردهی ۲ تعیین شده.
مفهوم برنامهنویسی پشت درس: حلقه
تکرار یا حلقه یکی از مهمترین ساختارهای هر زبان برنامهنویسی است. در حالت کد روبی، بلوک تکرار به شکل repeat(n): نوشته میشود. مثلاً repeat(5): forward یعنی «پنج بار جلو برو». در پایتون واقعی همین ایده با حلقهی for نوشته میشود.
برای والدین یک مثال روزمره کمک میکند: بهجای اینکه بگوییم «یک پله بالا برو، یک پله بالا برو، یک پله بالا برو...» میگوییم «ده پله بالا برو». کامپیوترها هم همینطور خلاصهگویی را دوست دارند. حلقه باعث میشود اشتباه کمتری رخ دهد، چون شمردن یک عدد سادهتر از چیدن ده بلوک است.
فعالیت قدمبهقدم با ربات روبی
ماموریت نمونه: هدف ۵ خانه جلوی روبی است. راه بلند: «⬆️ جلو، ⬆️ جلو، ⬆️ جلو، ⬆️ جلو، ⬆️ جلو». راه کوتاه با تکرار: «⟳ تکرار ۵ { ⬆️ جلو }». در حالت کد: repeat(5): forward.
بعد از این تمرین، عدد تکرار را عوض کنید و ببینید روبی چند قدم میرود. اگر هدف ۸ خانه جلوتر بود، فقط کافی است ۵ را به ۸ تبدیل کنید؛ دیگر لازم نیست سه بلوک تازه بچینید. میتوانید تکرار را با رنگ هم ترکیب کنید: «⟳ تکرار ۴ { 🎨 رنگ کن }» نشان میدهد هر بلوکی را میشود تکرار کرد، هرچند رنگ کردن یک خانه برای چند بار نتیجهی تازهای ندارد. این خودش یک بحث جالب در کلاس است.
- ✅ اول ماموریت را بدون تکرار حل کنید و بلوکها را بشمارید
- ✅ بلوکهای یکسان پشت سر هم را پیدا کنید
- ✅ همه را حذف کنید و یک ⟳ تکرار با عدد درست بگذارید
- ✅ یک ⬆️ جلو داخل تکرار بگذارید، اجرا کنید و دو برنامه را مقایسه کنید
اشتباههای رایج بچهها و راه رفعشان
اشتباه اول، گذاشتن بلوک جلو بیرون از تکرار بهجای داخل آن است؛ در این حالت تکرار خالی میماند و روبی فقط یک قدم برمیدارد. اشتباه دوم، عدد اشتباه در تکرار است؛ مثلاً ۴ بهجای ۵.
برای رفع اشکال، از کودک بخواهید با انگشت نشان دهد کدام بلوکها «داخل دهان» تکرار هستند. یک مقایسه هم کمک میکند: برنامهی بلند و کوتاه را کنار هم اجرا کنید و ببینید هر دو یک کار را انجام میدهند.
فعالیت بدون کامپیوتر: بازی دستزدن
یک کارت با عبارت «تکرار ۳» و یک کارت با «دست بزن» بسازید. وقتی کارت دستزدن داخل کارت تکرار است، کودک سه بار دست میزند. بعد کارتهای دیگر مثل «بپر» یا «بچرخ» را امتحان کنید و عدد را عوض کنید. بچهها خیلی زود میفهمند عدد تکرار و دستور داخلش دو چیز جدا هستند.
نکته برای معلم و والدین
طبق توصیهی طرح درس آکادمی روبی، تکرار را با مثال واقعی توضیح دهید: «هر روز صبح: بیدار شو، صبحانه بخور، برو مدرسه». اگر کودک علاقه نشان داد، حالت کد را هم کنار بلوکها به او نشان دهید تا ببیند repeat همان ⟳ تکرار است.
یک تمرین کوتاه برای پایان جلسه: برنامههای درس ۸ را که پر از بلوک تکراری بودند دوباره باز کنید و از کودک بپرسید کدام قسمت را میشود با تکرار کوتاه کرد. این مرور کمک میکند کودک ببیند ابزار تازهاش در مسئلههای قدیمی هم به کار میآید.
سوالهای پرتکرار
بلوک تکرار در روبی چطور نوشته میشود؟
در حالت بلوک ⟳ تکرار و در حالت کد repeat(n): است، مثلاً repeat(5): forward برای پنج قدم جلو.
چرا بهجای چند بلوک جلو از تکرار استفاده کنیم؟
برنامه کوتاهتر و خواناتر میشود و احتمال اشتباه در شمارش بلوکها کمتر است. در ارزیابی روبی راهحل کوتاهتر امتیاز بیشتری دارد.
آیا کودک ۷ ساله مفهوم حلقه را میفهمد؟
بله، وقتی با مثال ملموس و مقایسهی برنامهی بلند و کوتاه معرفی شود، بیشتر بچههای این سن آن را درک میکنند.