آموزش آرایه یک‌بعدی در پایتون با ۵ پروژه جذاب برای نوجوانان


📚 آموزش آرایه یک‌بعدی در پایتون با ۵ پروژه جذاب برای نوجوانان

📌 آرایه یک‌بعدی چیست؟

آرایه یک‌بعدی در پایتون همان لیست (List) است. لیست محلی برای ذخیره چند مقدار پشت سر هم است.

# ساخت یک لیست ساده
اسم_آرایه = [مقدار۱, مقدار۲, مقدار۳]
# مثال:
نمرات = [۱۸, ۱۵, ۱۹, ۱۴, ۱۷]

📊 پروژه ۱: میانگین نمرات کلاس

شرح: نمرات ۵ دانش‌آموز را بگیر و میانگین، بالاترین و پایین‌ترین نمره را نشان بده.

# پروژه میانگین نمرات
print(“📊 پروژه میانگین نمرات کلاس”)
نمرات = []

# دریافت نمرات
for i in range(5):
    نمره = float(input(f”نمره دانش‌آموز {i+1}: “))
    نمرات.append(نمره)

# محاسبات
میانگین = sum(نمرات) / len(نمرات)
بیشترین = max(نمرات)
کمترین = min(نمرات)

# نمایش نتایج
print(f”\n📋 لیست نمرات: {نمرات}”)
print(f”⭐ میانگین نمرات: {میانگین:.۲f}”)
print(f”🏆 بیشترین نمره: {بیشترین}”)
print(f”📉 کمترین نمره: {کمترین}”)

📺 خروجی نمونه:
📊 پروژه میانگین نمرات کلاس
نمره دانش‌آموز ۱: ۱۷
نمره دانش‌آموز ۲: ۱۹
نمره دانش‌آموز ۳: ۱۴
نمره دانش‌آموز ۴: ۱۸
نمره دانش‌آموز ۵: ۱۶

📋 لیست نمرات: [۱۷٫۰, ۱۹٫۰, ۱۴٫۰, ۱۸٫۰, ۱۶٫۰]
⭐ میانگین نمرات: ۱۶٫۸۰
🏆 بیشترین نمره: ۱۹٫۰
📉 کمترین نمره: ۱۴٫۰

🎯 پروژه ۲: شکارچی گنج (بازی جستجو)

شرح: یک آرایه از اعداد بساز و کاربر باید عدد گنج را پیدا کند.

# پروژه شکارچی گنج
import random
print(“🎯 بازی شکارچی گنج”)

# ساخت گنج با اعداد تصادفی
گنج = [random.randint(1, 50) for _ in range(10)]
عدد_گنج = random.choice(گنج)
print(“یک عدد در آرایه پنهان شده! پیدا کن!”)

# نمایش آرایه (اختیاری – برای سختی کمتر)
print(f”آرایه: {گنج}”)

حدس = int(input(“حدس بزن کدوم عدد تکرار داره؟ “))

if حدس == عدد_گنج:
    print(f”🎉 آفرین! گنج رو پیدا کردی! عدد {حدس}”)
else:
    print(f”💀 باختی! گنج عدد {عدد_گنج} بود”)

# پیدا کردن اندیس گنج
for i, مقدار in enumerate(گنج):
    if مقدار == عدد_گنج:
        print(f”📍 گنج در خانه {i} (اندیس) قرار داشت”)

📺 خروجی نمونه:
🎯 بازی شکارچی گنج
یک عدد در آرایه پنهان شده! پیدا کن!
آرایه: [۲۳, ۴۵, ۱۲, ۴۵, ۷, ۳۱, ۴۵, ۱۹, ۸, ۴۵]
حدس بزن کدوم عدد تکرار داره؟ ۴۵
🎉 آفرین! گنج رو پیدا کردی! عدد ۴۵
📍 گنج در خانه ۱ (اندیس) قرار داشت

💰 پروژه ۳: لیست مخارج روزانه

شرح: مخارج ۷ روز هفته را ثبت کن و مجموع و روز پرهزینه را بگو.

# پروژه مدیریت مخارج
print(“💰 مدیریت مخارج روزانه”)

مخارج = []
روزها = [“شنبه”, “یکشنبه”, “دوشنبه”, “سه‌شنبه”, “چهارشنبه”, “پنجشنبه”, “جمعه”]

for روز in روزها:
    مبلغ = float(input(f”مخارج {روز}: “))
    مخارج.append(مبلغ)

# محاسبات
مجموع = sum(مخارج)
میانگین = مجموع / ۷
روز_پرهزینه = روزها[مخارج.index(max(مخارج))]

print(f”\n📅 لیست مخارج هفتگی: {مخارج}”)
print(f”💵 مجموع مخارج: {مجموع:,.۰f} تومان”)
print(f”📊 میانگین روزانه: {میانگین:,.۰f} تومان”)
print(f”⚠️ روز پرهزینه: {روز_پرهزینه} با {max(مخارج):,.۰f} تومان”)

# چند روز بیشتر از میانگین؟
بالاتر = sum(1 for م in مخارج if م > میانگین)
print(f”📈 {بالاتر} روز بیش از میانگین خرج کردی”)

📺 خروجی نمونه:
💰 مدیریت مخارج روزانه
مخارج شنبه: ۲۵۰۰۰۰
مخارج یکشنبه: ۱۸۰۰۰۰
مخارج دوشنبه: ۳۵۰۰۰۰
مخارج سه‌شنبه: ۱۲۰۰۰۰
مخارج چهارشنبه: ۲۰۰۰۰۰
مخارج پنجشنبه: ۴۲۰۰۰۰
مخارج جمعه: ۳۰۰۰۰۰

📅 لیست مخارج هفتگی: [۲۵۰۰۰۰٫۰, ۱۸۰۰۰۰٫۰, ۳۵۰۰۰۰٫۰, ۱۲۰۰۰۰٫۰, ۲۰۰۰۰۰٫۰, ۴۲۰۰۰۰٫۰, ۳۰۰۰۰۰٫۰]
💵 مجموع مخارج: ۱,۸۲۰,۰۰۰ تومان
📊 میانگین روزانه: ۲۶۰,۰۰۰ تومان
⚠️ روز پرهزینه: پنجشنبه با ۴۲۰,۰۰۰ تومان
📈 ۳ روز بیش از میانگین خرج کردی

✅ پروژه ۴: مرتب‌سازی لیست کارها

شرح: کارهای روزانه را اولویت‌بندی کن و به ترتیب نمایش بده.

# پروژه اولویت کارها
print(“✅ مدیریت اولویت کارها”)

کارها = []

print(“5 کار مهمت رو وارد کن (به ترتیب اولویت از ۱ تا ۵):”)
for i in range(5):
    کار = input(f”کار {i+1}: “)
    کارها.append(کار)

# مرتب‌سازی دستی (مرتب‌سازی حبابی ساده)
for i in range(len(کارها)):
    for j in range(i+1, len(کارها)):
        if len(کارها[i]) < len(کارها[j]): # بر اساس طول اسم
            کارها[i], کارها[j] = کارها[j], کارها[i]

print(“\n📋 لیست کارها: (از مهم‌تر به کم‌اهمیت)”)
for شماره, کار in enumerate(کارها, ۱):
    print(f”{شماره}. {کار}”)

# مرتب‌سازی معکوس
کارها.reverse()
print(“\n🔂 مرتب‌سازی معکوس (کم‌اهمیت به مهم):”)
print(کارها)

📺 خروجی نمونه:
✅ مدیریت اولویت کارها
۵ کار مهمت رو وارد کن (به ترتیب اولویت از ۱ تا ۵):
کار ۱: درس خوندن
کار ۲: ورزش کردن
کار ۳: بازی کامپیوتر
کار ۴: کمک به مامان
کار ۵: خوابیدن

📋 لیست کارها: (از مهم‌تر به کم‌اهمیت)
۱٫ بازی کامپیوتر
۲٫ کمک به مامان
۳٫ درس خوندن
۴٫ ورزش کردن
۵٫ خوابیدن

🔂 مرتب‌سازی معکوس (کم‌اهمیت به مهم):
[‘خوابیدن’, ‘ورزش کردن’, ‘درس خوندن’, ‘کمک به مامان’, ‘بازی کامپیوتر’]

🔐 پروژه ۵: ژنراتور رمز عبور

شرح: از آرایه حروف و اعداد استفاده کن تا رمزهای تصادفی بسازی.

# پروژه ژنراتور رمز عبور
import random
print(“🔐 ژنراتور رمز عبور قوی”)

# آرایه‌های مختلف
حروف_کوچک = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’]
حروف_بزرگ = [‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’]
اعداد = [‘۰’, ‘۱’, ‘۲’, ‘۳’, ‘۴’, ‘۵’, ‘۶’, ‘۷’, ‘۸’, ‘۹’]
علامت‌ها = [‘!’, ‘@’, ‘#’, ‘$’, ‘%’, ‘&’, ‘*’]

# ترکیب همه آرایه‌ها
همه_چیز = حروف_کوچک + حروف_بزرگ + اعداد + علامت‌ها
print(f”✅ {len(همه_چیز)} کاراکتر مختلف آماده است”)

تعداد = int(input(“چند تا رمز میخوای بسازی؟ “))
طول = int(input(“طول هر رمز چند باشه؟ “))

رمزها = []
for i in range(تعداد):
    رمز = ”.join(random.choice(همه_چیز) for _ in range(طول))
    رمزها.append(رمز)

print(f”\n🔑 رمزهای ساخته شده:”)
for شماره, رمز in enumerate(رمزها, ۱):
    print(f”{شماره}. {رمز}”)

# نمایش آرایه اصلی
print(f”\n📦 آرایه اصلی کاراکترها:\n{همه_چیز}”)

📺 خروجی نمونه:
🔐 ژنراتور رمز عبور قوی
✅ ۳۷ کاراکتر مختلف آماده است
چند تا رمز میخوای بسازی؟ ۳
طول هر رمز چند باشه؟ ۸

🔑 رمزهای ساخته شده:
۱٫ Gj5@Dc9!
۲٫ aB#4Hf2$
۳٫ ۷&kM1*Pj

📦 آرایه اصلی کاراکترها:
[‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’, ‘A’, ‘B’, ‘C’, ‘D’, ‘E’, ‘F’, ‘G’, ‘H’, ‘I’, ‘J’, ‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’, ‘!’, ‘@’, ‘#’, ‘$’, ‘%’, ‘&’, ‘*’]

🏋️ تمرین‌های اضافی برای چالش

  • آرایه معکوس: برنامه‌ای بنویس که آرایه را بدون استفاده از reverse() معکوس کند.
  • حذف تکراری‌ها: یک آرایه داشته باش و اعداد تکراری رو حذف کن.
  • جستجوی دودویی: آرایه مرتب را با روش دودویی جستجو کن.

💡 نکات کلیدی آرایه‌ها در پایتون

# عملیات پرکاربرد
آرایه = [۱۰, ۲۰, ۳۰, ۴۰]
آرایه.append(50) # اضافه کردن در انتها
آرایه.insert(2, 25) # اضافه در اندیس خاص
آرایه.remove(30) # حذف مقدار
آرایه.pop() # حذف از انتها
len(آرایه) # طول آرایه
آرایه[۰] # دسترسی به اولین عنصر
آرایه[-۱] # دسترسی به آخرین عنصر
آرایه[۱:۳] # برش آرایه (Slicing)
⭐ نکته مهم: در پایتون، ایندکس‌گذاری آرایه‌ها از ۰ شروع می‌شود. یعنی اولین عضو آرایه در خانه ۰ قرار دارد.

🎯 ترفندهای جالب برای نوجوانان

  • میتونی با list comprehension مثل [i*2 for i in range(10)] سریع آرایه بسازی!
  • از * برای تکرار آرایه استفاده کن: [۰] * ۵ → [۰, ۰, ۰, ۰, ۰]
  • با min() و max() راحت‌ترین عضو رو پیدا کن!
  • برای چالش‌های بیشتر، میتونی با random.shuffle() آرایه رو به هم بزنی!

🚀 با تمرین و تکرار، حرفه‌ای شو!

✨ موفق باشی! ✨


دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *