آموزش حلقه‌ها در پایتون (for, range, while)

حلقه‌ها برای تکرار یک بلوک کد چندین بار استفاده می‌شوند. در پایتون سه نوع حلقه اصلی داریم: for، range و while.

حلقه for

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

# ساختار پایه حلقه for
for element in sequence:
    # کدهایی که تکرار می‌شوند

۷ پروژه عملی با حلقه for

پروژه ۱: چاپ اعداد ۱ تا ۱۰

برنامه‌ای بنویسید که اعداد ۱ تا ۱۰ را چاپ کند.

خروجی مورد انتظار:
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
for i in range(1, 11):
    print(i)

پروژه ۲: محاسبه مجموع اعداد ۱ تا ۱۰۰

مجموع اعداد ۱ تا ۱۰۰ را محاسبه و نمایش دهید.

خروجی مورد انتظار:
مجموع اعداد ۱ تا ۱۰۰: ۵۰۵۰
total = 0
for num in range(1, 101):
    total += num
print(“مجموع اعداد ۱ تا ۱۰۰:”, total)

پروژه ۳: چاپ جدول ضرب ۵

جدول ضرب عدد ۵ (از ۱ تا ۱۰) را چاپ کنید.

خروجی مورد انتظار:
۵ × ۱ = ۵
۵ × ۲ = ۱۰
۵ × ۳ = ۱۵
۵ × ۴ = ۲۰
۵ × ۵ = ۲۵
۵ × ۶ = ۳۰
۵ × ۷ = ۳۵
۵ × ۸ = ۴۰
۵ × ۹ = ۴۵
۵ × ۱۰ = ۵۰
number = 5
for i in range(1, 11):
    result = number * i
    print(number, “×”, i, “=”, result)

پروژه ۴: شمارش معکوس از ۱۰ تا ۱

اعداد ۱۰ تا ۱ را به صورت معکوس چاپ کنید.

خروجی مورد انتظار:
۱۰
۹
۸
۷
۶
۵
۴
۳
۲
۱
for i in range(10, 0, -1):
    print(i)

پروژه ۵: چاپ کاراکترهای یک رشته

هر کاراکتر رشته “پایتون” را در یک خط چاپ کنید.

خروجی مورد انتظار:
پ
ا
ی
ت
و
ن
word = “پایتون”
for char in word:
    print(char)

پروژه ۶: چاپ اعداد زوج بین ۱ تا ۲۰

تمام اعداد زوج بین ۱ تا ۲۰ را چاپ کنید.

خروجی مورد انتظار:
۲
۴
۶
۸
۱۰
۱۲
۱۴
۱۶
۱۸
۲۰
for i in range(2, 21, 2):
    print(i)

پروژه ۷: محاسبه فاکتوریل یک عدد

فاکتوریل عدد ۵ را محاسبه و نمایش دهید.

خروجی مورد انتظار:
فاکتوریل ۵ = ۱۲۰
n = 5
factorial = 1
for i in range(1, n + 1):
    factorial *= i
print(“فاکتوریل”, n, “=”, factorial)

تابع range

تابع range() یک دنباله از اعداد تولید می‌کند. معمولاً با حلقه for استفاده می‌شود.

# ساختارهای مختلف range
range(stop) # از ۰ تا stop-1
range(start, stop) # از start تا stop-1
range(start, stop, step) # از start تا stop-1 با گام step

۷ پروژه عملی با تابع range

پروژه ۱: اعداد ۰ تا ۴

اعداد ۰ تا ۴ را با استفاده از range(stop) چاپ کنید.

خروجی مورد انتظار:
۰
۱
۲
۳
۴
for i in range(5):
    print(i)

پروژه ۲: اعداد ۵ تا ۹

اعداد ۵ تا ۹ را با استفاده از range(start, stop) چاپ کنید.

خروجی مورد انتظار:
۵
۶
۷
۸
۹
for i in range(5, 10):
    print(i)

پروژه ۳: اعداد فرد ۱ تا ۲۰

اعداد فرد بین ۱ تا ۲۰ را با استفاده از range(start, stop, step) چاپ کنید.

خروجی مورد انتظار:
۱
۳
۵
۷
۹
۱۱
۱۳
۱۵
۱۷
۱۹
for i in range(1, 20, 2):
    print(i)

پروژه ۴: اعداد منفی ۱۰ تا -۱

اعداد ۱۰ تا -۱ را به صورت معکوس چاپ کنید.

خروجی مورد انتظار:
۱۰
۹
۸
۷
۶
۵
۴
۳
۲
۱
۰
for i in range(10, -2, -1):
    print(i)

پروژه ۵: ضرب اعداد ۱ تا ۵ در ۳

اعداد ۱ تا ۵ را در ۳ ضرب کرده و نمایش دهید.

خروجی مورد انتظار:
۳
۶
۹
۱۲
۱۵
for i in range(1, 6):
    print(i * 3)

پروژه ۶: جمع مربعات اعداد ۱ تا ۵

مجموع مربعات اعداد ۱ تا ۵ را محاسبه کنید.

خروجی مورد انتظار:
مجموع مربعات اعداد ۱ تا ۵: ۵۵
total = 0
for i in range(1, 6):
    total += i ** 2
print(“مجموع مربعات اعداد ۱ تا ۵:”, total)

پروژه ۷: چاپ اعداد مضرب ۴ از ۰ تا ۲۰

اعداد مضرب ۴ بین ۰ تا ۲۰ را چاپ کنید.

خروجی مورد انتظار:
۰
۴
۸
۱۲
۱۶
۲۰
for i in range(0, 21, 4):
    print(i)

حلقه while

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

# ساختار پایه حلقه while
while condition:
    # کدهایی که تکرار می‌شوند

۷ پروژه عملی با حلقه while

پروژه ۱: چاپ اعداد ۱ تا ۵ با while

اعداد ۱ تا ۵ را با استفاده از حلقه while چاپ کنید.

خروجی مورد انتظار:
۱
۲
۳
۴
۵
i = 1
while i <= 5:
    print(i)
    i += 1

پروژه ۲: جمع اعداد تا رسیدن به ۱۰۰

اعداد را از ۱ شروع کرده و جمع کنید تا زمانی که مجموع به ۱۰۰ برسد.

خروجی مورد انتظار:
مجموع: ۱۰۵
تعداد اعداد: ۱۴
total = 0
count = 1
while total < 100:
    total += count
    count += 1
print(“مجموع:”, total)
print(“تعداد اعداد:”, count1)

پروژه ۳: حدس عدد

برنامه‌ای بنویسید که از کاربر بخواهد عدد ۷ را حدس بزند.

خروجی مورد انتظار:
عدد را حدس بزنید: ۵
بیشتر!
عدد را حدس بزنید: ۸
کمتر!
عدد را حدس بزنید: ۷
آفرین! درست حد

آموزش دستورات شرطی و حلقه‌ها در پایتون

در این بخش فقط از دستورات if ، elif ، else و while استفاده می‌کنیم.

پروژه عملی اول: بررسی نمره دانش‌آموز

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


score = int(input("نمره را وارد کنید: "))

if score >= 90:
    print("عالی")
elif score >= 70:
    print("خوب")
elif score >= 50:
    print("قبول")
else:
    print("مردود")

توضیح خط به خط:

  • score = int(input(...)): گرفتن نمره از کاربر و تبدیل به عدد صحیح.
  • if score >= 90:: اگر نمره ۹۰ یا بیشتر باشد.
  • elif score >= 70:: در غیر این صورت اگر نمره ۷۰ یا بیشتر باشد.
  • elif score >= 50:: در غیر این صورت اگر نمره ۵۰ یا بیشتر باشد.
  • else:: در غیر این صورت یعنی کمتر از ۵۰.

پروژه عملی دوم: منوی ساده

سوال: برنامه‌ای بنویسید که یک منوی ساده نمایش دهد و کاربر تا انتخاب خروج در حلقه بماند.


choice = ""

while choice != "4":
    print("منو: ۱) سلام  ۲) خداحافظ  ۳) درباره  ۴) خروج")
    choice = input("انتخاب کنید: ")

    if choice == "1":
        print("سلام!")
    elif choice == "2":
        print("خداحافظ!")
    elif choice == "3":
        print("این یک منوی ساده است.")
    elif choice == "4":
        print("برنامه پایان یافت.")
    else:
        print("انتخاب نامعتبر")

توضیح خط به خط:

  • choice = "": تعریف متغیر برای ذخیره انتخاب کاربر.
  • while choice != "4":: تا زمانی که انتخاب کاربر ۴ نباشد حلقه ادامه دارد.
  • if choice == "1":: اگر کاربر گزینه ۱ را انتخاب کند.
  • elif choice == "2":: اگر گزینه ۲ انتخاب شود.
  • elif choice == "3":: اگر گزینه ۳ انتخاب شود.
  • elif choice == "4":: اگر گزینه ۴ انتخاب شود پیام پایان چاپ می‌شود.
  • else:: اگر هیچکدام نبود پیام خطا چاپ می‌شود.

پروژه عملی سوم: شمارش معکوس

سوال: برنامه‌ای بنویسید که از عددی شروع کند و تا صفر شمارش معکوس انجام دهد.


n = int(input("عدد شروع شمارش معکوس: "))

while n >= 0:
    if n > 0:
        print("عدد:", n)
    elif n == 0:
        print("پایان شمارش!")
    else:
        print("این خط هرگز اجرا نمی‌شود.")
    n -= 1

توضیح خط به خط:

  • n = int(input(...)): گرفتن عدد شروع از کاربر.
  • while n >= 0:: تا زمانی که n بزرگتر یا مساوی صفر باشد حلقه ادامه دارد.
  • if n > 0:: اگر n بزرگتر از صفر باشد عدد چاپ می‌شود.
  • elif n == 0:: اگر n برابر صفر باشد پیام پایان چاپ می‌شود.
  • else:: این بخش در این برنامه اجرا نمی‌شود چون شرط حلقه اجازه نمی‌دهد.
  • n -= 1: در هر بار اجرای حلقه مقدار n یک واحد کم می‌شود.







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

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