7.3 KiB
تمرین آرایهها و حلقهها
دستورالعملها
تمرینهای زیر را برای تمرین کار با آرایهها و حلقهها انجام دهید. هر تمرین بر مفاهیم درس بنا شده و شما را ترغیب میکند که از انواع مختلف حلقهها و روشهای آرایه استفاده کنید.
تمرین ۱: تولید الگوی عددی
برنامهای بنویسید که هر سومین عدد از بین 1 تا 20 را فهرست کند و در کنسول نمایش دهد.
الزامات:
- استفاده از حلقهٔ
forبا افزایش سفارشی - نمایش اعداد به شکل کاربرپسند
- افزودن کامنتهای توضیحدهنده منطق کد
خروجی مورد انتظار:
3, 6, 9, 12, 15, 18
نکته: عبارت تکرار در حلقهٔ for خود را تغییر دهید تا اعداد را رد کنید.
تمرین ۲: تحلیل آرایه
آرایهای شامل حداقل ۸ عدد مختلف ایجاد کنید و توابعی برای تحلیل دادهها بنویسید.
الزامات:
- آرایهای به نام
numbersبا حداقل ۸ مقدار بسازید - تابعی به نام
findMaximum()بنویسید که بیشترین عدد را برگرداند - تابعی به نام
findMinimum()بنویسید که کمترین عدد را برگرداند - تابعی به نام
calculateSum()بنویسید که مجموع همهٔ اعداد را برگرداند - هر تابع را تست و نتایج را نمایش دهید
چالش اضافه: تابعی بسازید که دومین عدد بزرگترین را در آرایه پیدا کند.
تمرین ۳: پردازش آرایه رشتهای
آرایهای از فیلمها/کتابها/آهنگهای مورد علاقه خود بسازید و با انواع حلقهها تمرین کنید.
الزامات:
- آرایهای با حداقل ۵ مقدار رشتهای ایجاد کنید
- از حلقهٔ سنتی
forبرای نمایش موارد همراه با شماره (1. نام مورد) استفاده کنید - از حلقهٔ
for...ofبرای نمایش موارد با حروف بزرگ استفاده کنید - از متد
forEach()برای شمارش و نمایش مجموع کاراکترها استفاده کنید
مثال خروجی:
Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar
For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR
Character count:
Total characters across all titles: 42
تمرین ۴: فیلتر دادهها (پیشرفته)
برنامهای بسازید که آرایهای از اشیاء دانشآموزان را پردازش کند.
الزامات:
- آرایهای با حداقل ۵ شیء دانشآموز شامل ویژگیهای:
name،age،gradeبسازید - از حلقهها برای یافتن دانشآموزانی که ۱۸ سال یا بیشتر دارند استفاده کنید
- میانگین نمرات همه دانشآموزان را محاسبه کنید
- آرایهٔ جدیدی ایجاد کنید که فقط شامل دانشآموزان با نمره بالاتر از ۸۵ باشد
ساختار نمونه:
const students = [
{ name: "Alice", age: 17, grade: 92 },
{ name: "Bob", age: 18, grade: 84 },
// دانشآموزان بیشتری اضافه کنید...
];
آزمون کد شما
کدهای خود را به صورت زیر تست کنید:
- اجرای هر تمرین در کنسول مرورگرتان
- بررسی تطابق خروجی با نتایج مورد انتظار
- آزمایش با مجموعه دادههای مختلف
- اطمینان از اینکه کد شما موارد لبهای را مدیریت میکند (آرایههای خالی، تک عنصر)
دستورالعمل ارسال
موارد زیر را در ارسال خود بگنجانید:
- کد جاوااسکریپت با کامنتهای کامل برای هر تمرین
- اسکرینشات یا خروجی متنی برنامههای در حال اجرا
- توضیح کوتاه درباره انتخاب نوع حلقه در هر وظیفه و دلیل انتخاب آن
معیار ارزشیابی
| معیار | نمونه عالی (۳ امتیاز) | قابل قبول (۲ امتیاز) | نیاز به بهبود (۱ امتیاز) |
|---|---|---|---|
| عملکرد | همه تمرینها به درستی انجام شده با چالشهای جایزه | همه تمرینهای لازم به درستی کار میکنند | برخی تمرینها ناقص یا دارای خطا هستند |
| کیفیت کد | کد تمیز و ساختیافته با نامهای متغیر توصیفی | کد کارا است اما میتوان تمیزتر بود | کد بینظم یا سخت فهم است |
| کامنتها | کامنتهای جامع که منطق و تصمیمها را توضیح میدهند | کامنتهای پایهای موجود است | کامنت کم یا اصلاً ندارد |
| استفاده از حلقهها | درک مناسب از انواع مختلف حلقهها را نشان میدهد | حلقهها به درستی استفاده شده ولی تنوع کم است | استفاده نادرست یا ناکارآمد از حلقهها |
| تست | شواهد تست دقیق با چندین سناریو | تست پایه نشان داده شده | شواهد کمی از تست |
سوالات تأملی
پس از اتمام تمرینها، به موارد زیر فکر کنید:
- کدام نوع حلقه طبیعیتر و راحتتر برای شما بود و چرا؟
- هنگام کار با آرایهها با چه چالشهایی مواجه شدید؟
- این مهارتها چگونه میتوانند در پروژههای واقعی توسعه وب کاربردی باشند؟
- اگر بخواهید کد خود را برای عملکرد بهتر بهینه کنید، چه تغییراتی انجام میدهید؟
توضیح مهم:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است دارای اشتباهات یا نادرستیهایی باشند. سند اصلی به زبان بومی آن به عنوان منبع معتبر محسوب میشود. برای اطلاعات حیاتی، توصیه میشود از ترجمه حرفهای انسانی استفاده شود. ما مسئول هیچ گونه سوءتفاهم یا برداشت نادرستی که از استفاده از این ترجمه ناشی شود، نیستیم.