از پوسته بزرگ آموزش آنلاین دیجی اکادمی رونمایی شد ...

عضویت

حلقه‌ها در پایتون

🔄 درس سوم: حلقه‌ها در پایتون

🎯 هدف این درس: آشنایی با حلقه‌های for و while برای اجرای کارهای تکراری


قسمت 1: حلقه چیست و چرا به آن نیاز داریم؟

در برنامه‌نویسی، گاهی نیاز داریم یک کار را چندین بار تکرار کنیم. مثلاً اگر بخواهیم ۱۰۰ بار یک پیام را چاپ کنیم، نوشتن ۱۰۰ خط کد کار هوشمندانه‌ای نیست. اینجاست که حلقه‌ها به کمک ما می‌آیند.

💡 مثال در زندگی واقعی:

• چاپ ۱۰۰ برگه
• تکرار یک ورزش در باشگاه
• خواندن تمام صفحات یک کتاب

انواع حلقه در پایتون:

  • حلقه for: زمانی استفاده می‌شود که تعداد تکرارها را از قبل می‌دانیم.
  • حلقه while: زمانی استفاده می‌شود که تعداد تکرارها را نمی‌دانیم و باید تا زمانی که یک شرط برقرار است، تکرار کنیم.

قسمت 2: حلقه for

حلقه for برای پیمایش روی یک دنباله (مانند لیست، رشته، یا محدوده اعداد) استفاده می‌شود.

ساختار کلی:

🐍 ساختار for PYTHON v3.12 🔒 RAW
for متغیر in دنباله:

    # کدهایی که باید تکرار شوند

مثال 1: چاپ اعداد با range

🐍 چاپ اعداد ۰ تا ۴ PYTHON v3.12 🔒 RAW
for i in range(5):

    print(f"عدد: {i}")

💡 نکته: تابع range(5) اعداد ۰ تا ۴ را تولید می‌کند. یعنی از ۰ شروع می‌شود و ۵-۱=۴ تمام می‌شود.

مثال 2: پیمایش یک لیست

🐍 پیمایش لیست میوه‌ها PYTHON v3.12 🔒 RAW
fruits = ["سیب", "موز", "پرتقال"]
for fruit in fruits:

    print(f"میوه: {fruit}")

مثال 3: پیمایش یک رشته

🐍 پیمایش حروف یک کلمه PYTHON v3.12 🔒 RAW
word = "پایتون"
for letter in word:

    print(f"حرف: {letter}")

قسمت 3: تابع range

تابع range() یکی از پرکاربردترین توابع در حلقه‌های for است که یک دنباله از اعداد ایجاد می‌کند.

📊 سه حالت استفاده از range

نحوه استفاده توضیح مثال
range(stop) از ۰ تا stop-1 range(5) → 0,1,2,3,4
range(start, stop) از start تا stop-1 range(2, 6) → 2,3,4,5
range(start, stop, step) از start تا stop-1 با گام step range(1, 10, 2) → 1,3,5,7,9

🔍 مثال عملی:

🐍 مثال‌های range PYTHON v3.12 🔒 RAW
# مثال 1: range(stop)

print("مثال 1:")

for i in range(5):

    print(i, end=" ")
# مثال 2: range(start, stop)

print("\n\nمثال 2:")

for i in range(2, 7):

    print(i, end=" ")
# مثال 3: range(start, stop, step)

print("\n\nمثال 3:")

for i in range(1, 11, 2):

    print(i, end=" ")
print("\n")

قسمت 4: حلقه while

حلقه while تا زمانی که یک شرط درست باشد، به تکرار ادامه می‌دهد.

ساختار کلی:

🐍 ساختار while PYTHON v3.12 🔒 RAW
while شرط:

    # کدهایی که تا زمانی که شرط برقرار است، تکرار می‌شوند

مثال 1: شمارش از ۱ تا ۵

🐍 شمارش با while PYTHON v3.12 🔒 RAW
count = 1
while count <= 5:

    print(f"شماره: {count}")

    count += 1  # افزایش شمارنده
print("پایان حلقه")

⚠️ هشدار: همیشه مطمئن شوید که شرط حلقه در نهایت false می‌شود، در غیر این صورت حلقه تا ابد ادامه می‌یابد (حلقه بی‌نهایت).

مثال 2: دریافت ورودی از کاربر تا زمانی که عدد صحیح وارد کند

🐍 دریافت ورودی معتبر PYTHON v3.12 🔒 RAW
while True:

    try:

        age = int(input("سن خود را وارد کنید: "))

        break  # اگر ورودی صحیح بود، از حلقه خارج می‌شویم

    except ValueError:

        print("❌ لطفاً یک عدد صحیح وارد کنید!")
print(f"✅ سن شما: {age}")

قسمت 5: تفاوت حلقه for و while

📊 جدول مقایسه

ویژگی حلقه for حلقه while
تعداد تکرار معمولاً مشخص است نامشخص است
کاربرد اصلی پیمایش دنباله‌ها انتظار برای وقوع یک شرط
خطر حلقه بی‌نهایت کم بالا (در صورت فراموشی افزایش شمارنده)

قسمت 6: کلمات کلیدی break و continue

1️⃣ دستور break

دستور break برای خروج فوری از حلقه استفاده می‌شود.

🐍 مثال break PYTHON v3.12 🔒 RAW
# پیدا کردن اولین عدد زوج در لیست

numbers = [1, 3, 5, 7, 8, 9, 11]
for num in numbers:

    if num % 2 == 0:

        print(f"اولین عدد زوج پیدا شد: {num}")

        break  # بعد از پیدا شدن، از حلقه خارج می‌شویم

2️⃣ دستور continue

دستور continue برای پرش به تکرار بعدی حلقه استفاده می‌شود و کدهای بعد از آن در همان تکرار اجرا نمی‌شوند.

🐍 مثال continue PYTHON v3.12 🔒 RAW
# چاپ اعداد فرد از ۱ تا ۱۰

for i in range(1, 11):

    if i % 2 == 0:

        continue  # اعداد زوج را نادیده بگیر

    print(i, end=" ")
print("\n")

قسمت 7: پروژه عملی – جدول ضرب

📝 پروژه: ساخت جدول ضرب

برنامه‌ای بنویسید که با استفاده از حلقه‌های تو در تو، جدول ضرب ۱ تا ۱۰ را نمایش دهد.

🔍 راه‌حل پروژه:

🐍 جدول ضرب PYTHON v3.12 🔒 RAW
# حلقه بیرونی برای سطرها (عدد اول)

for i in range(1, 11):

    # حلقه داخلی برای ستون‌ها (عدد دوم)

    for j in range(1, 11):

        result = i * j

        print(f"{i} × {j} = {result:2d}", end="  ")

    print()  # رفتن به خط بعدی

قسمت 8: تمرین عملی

📝 تمرین شماره 1

برنامه‌ای بنویسید که یک عدد از کاربر بگیرد و فاکتوریل آن را محاسبه کند. (فاکتوریل ۵ = ۵×۴×۳×۲×۱)

🔍 راه‌حل تمرین:

🐍 محاسبه فاکتوریل PYTHON v3.12 🔒 RAW
# دریافت عدد از کاربر

num = int(input("یک عدد برای محاسبه فاکتوریل وارد کنید: "))
# محاسبه فاکتوریل

factorial = 1

for i in range(1, num + 1):

    factorial *= i
# نمایش نتیجه

print(f"فاکتوریل {num} = {factorial}")

📝 تمرین شماره 2

برنامه‌ای بنویسید که یک عدد از کاربر بگیرد و تشخیص دهد که آیا عدد اول است یا خیر.

🔍 راه‌حل تمرین:

🐍 تشخیص عدد اول PYTHON v3.12 🔒 RAW
# دریافت عدد از کاربر

num = int(input("یک عدد وارد کنید: "))
# اعداد ۰ و ۱ اول نیستند

if num < 2:

    print(f"{num} عدد اول نیست.")

else:

    is_prime = True

    for i in range(2, int(num ** 0.5) + 1):

        if num % i == 0:

            is_prime = False

            break
    if is_prime:

        print(f"{num} یک عدد اول است.")

    else:

        print(f"{num} عدد اول نیست.")

📚 جمع‌بندی درس

در این درس یاد گرفتیم:

  • ✅ مفهوم حلقه و کاربرد آن
  • ✅ حلقه for و تابع range()
  • ✅ حلقه while و نکات امنیتی آن
  • ✅ تفاوت حلقه for و while
  • ✅ کلمات کلیدی break و continue
  • ✅ پروژه‌های عملی: جدول ضرب، فاکتوریل و تشخیص عدد اول

🎯 درس بعدی: توابع در پایتون (Function)


💡 برای مشاهده دوره‌های بیشتر، به صفحه دوره‌ها مراجعه کنید.

👤
نویسنده یونس رجستری
📅
تاریخ انتشار 18 مرداد 1405
🔄
آخرین بروزرسانی 18 مرداد 1405
ارسال دیدگاه

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