پروژه ۱: محاسبه شاخص توده بدنی (BMI)

صورت مسئله: برنامه‌ای بنویسید که وزن و قد کاربر را گرفته و شاخص BMI او را محاسبه کند و بگوید آیا وزن او طبیعی است یا خیر.

این خروجی است:
وزن خود را وارد کنید: ۶۰
قد خود را وارد کنید: ۱٫۷۰
BMI شما: ۲۰٫۷۶
وزن شما طبیعی است.
print(“وزن خود را وارد کنید:”)
weight = float(input())
print(“قد خود را وارد کنید:”)
height = float(input())
bmi = weight / (height * height)
print(“BMI شما:”, bmi)
if bmi < 18.5:
  print(“وزن شما کمتر از حد طبیعی است.”)
elif bmi < 25:
  print(“وزن شما طبیعی است.”)
else:
  print(“وزن شما بیشتر از حد طبیعی است.”)

نکات و اشتباهات رایج:

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

چرا از float استفاده کرده‌ایم و نه int؟

در برنامه‌ی محاسبه BMI باید وزن و قد کاربر را دریافت کنیم. قد معمولاً به صورت اعشاری (مثلاً ۱٫۷۰ متر) وارد می‌شود. اگر از int استفاده کنیم، فقط عدد صحیح مثل ۱ یا ۲ پذیرفته می‌شود و دقت محاسبه از بین می‌رود.
به همین دلیل از float استفاده می‌کنیم تا بتوانیم اعداد اعشاری را وارد کنیم و نتیجه دقیق‌تر باشد.

ساختار if ، elif و else در پایتون

  • if: برای بررسی یک شرط استفاده می‌شود. اگر شرط درست باشد، دستورات داخل آن اجرا می‌شوند.
  • elif: مخفف “else if” است. اگر شرط قبلی درست نبود، شرط جدید بررسی می‌شود.
  • else: اگر هیچ‌کدام از شرط‌های قبلی درست نبودند، دستورات داخل else اجرا می‌شوند.

نمونه ساختار کلی:

if شرط۱:
    دستور۱
elif شرط۲:
    دستور۲
else:
    دستور۳

در این ساختار ابتدا شرط اول بررسی می‌شود. اگر درست بود، دستور۱ اجرا می‌شود. اگر درست نبود، شرط دوم بررسی می‌شود. اگر آن هم درست نبود، در نهایت دستور۳ اجرا خواهد شد.

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

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

این خروجی است:
۱۲۳۴۵
۱۲۳۴
۱۲۳
۱۲
۱
۱۲
۱۲۳
۱۲۳۴
۱۲۳۴۵
for i in range(5,0,-1):
  for j in range(1,i+1):
    print(j,end=””)
  print()
for i in range(2,6):
  for j in range(1,i+1):
    print(j,end=””)
  print()

نکات: فراموش کردن end=”” باعث می‌شود اعداد زیر هم چاپ شوند.

توضیح دستور end در پایتون

در پروژه شش (مثلث عددی) از دستور end=”” استفاده کردیم. این دستور در تابع print مشخص می‌کند که بعد از چاپ هر خروجی، چه چیزی در انتهای آن قرار بگیرد.
به طور پیش‌فرض، print بعد از هر خروجی یک خط جدید (\n) اضافه می‌کند. اما وقتی end="" می‌گذاریم، دیگر خط جدید اضافه نمی‌شود و خروجی‌ها پشت سر هم در همان خط چاپ می‌شوند.

ساختار کلی دستور:

print(مقدار , end="متن دلخواه")

کاربردها:

  • چاپ کردن چند مقدار در یک خط بدون رفتن به خط جدید.
  • ساختن الگوهای متنی مثل مثلث یا جدول.
  • جلوگیری از شکسته شدن خروجی در چند خط.

مثال ساده:

for i in range(1,6):
    print(i, end=" ")

خروجی این کد به صورت زیر خواهد بود:

۱ ۲ ۳ ۴ ۵

اگر end=" " را حذف کنیم، هر عدد در خط جداگانه چاپ می‌شود.

تفاوت استفاده از end در دستور print

به طور پیش‌فرض، دستور print در پایتون بعد از هر بار چاپ، یک خط جدید اضافه می‌کند.
اگر از end=”” استفاده کنیم، می‌توانیم این رفتار را تغییر دهیم و خروجی‌ها پشت سر هم در همان خط چاپ شوند.

بدون end:

for i in range(1,6):
    print(i)

خروجی:

۱
۲
۳
۴
۵

با end=””:

for i in range(1,6):
    print(i, end="")

خروجی:

۱۲۳۴۵

با end=” ” (فاصله):

for i in range(1,6):
    print(i, end=" ")

خروجی:

۱ ۲ ۳ ۴ ۵

کاربرد end:

  • چاپ کردن چند مقدار در یک خط.
  • ساختن الگوهای متنی مثل مثلث یا جدول.
  • کنترل ظاهر خروجی (مثلاً اضافه کردن فاصله یا علامت خاص بین داده‌ها).

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

صورت مسئله: برنامه‌ای بنویسید که دمای وارد شده را با خط‌های عمودی نمایش دهد.

این خروجی است:
دمای وارد شده: ۴
||||
print(“دمای وارد شده:”)
temp = int(input())
for i in range(temp):
  print(“|”,end=””)

نکات: اگر end=”” نگذاریم، هر خط جدا چاپ می‌شود.

پروژه ۳: رسم نمودار پله‌ای با متن

صورت مسئله: برنامه‌ای بنویسید که با استفاده از * یک نمودار پله‌ای بسازد.

این خروجی است:
*
**
***
****
*****
for i in range(1,6):
  print(“*”*i)

نکات: اگر از range(6) استفاده نکنیم، پنج خط کامل نمی‌شود.

پروژه ۴: شبیه‌سازی چراغ راهنمایی

صورت مسئله: برنامه‌ای بنویسید که چراغ راهنمایی را با متن شبیه‌سازی کند.

این خروجی است:
چراغ قرمز: توقف
چراغ سبز: حرکت
چراغ زرد: آماده باش
light = “سبز”
if light == “قرمز”:
  print(“توقف”)
elif light == “زرد”:
  print(“آماده باش”)
else:
  print(“حرکت”)

نکات: اگر رشته‌ها را دقیق ننویسیم شرط درست کار نمی‌کند.

پروژه ۵: شمارش ستاره‌ها

صورت مسئله: برنامه‌ای بنویسید که تعداد ستاره‌های وارد شده را چاپ کند.

این خروجی است:
تعداد ستاره: ۳
***
print(“تعداد ستاره:”)
n = int(input())
print(“*”*n)

نکات: اگر از int استفاده نکنیم، ضرب رشته کار نمی‌کند.

پروژه ۶: مثلث عددی

صورت مسئله: برنامه‌ای بنویسید که مثلثی از اعداد چاپ کند.

این خروجی است:
۱
۱۲
۱۲۳
۱۲۳۴
۱۲۳۴۵
for i in range(1,6):
  for j in range(1,i+1):
    print(j,end=””)
  print()

نکات: اگر end=”” نگذاریم، هر عدد در خط جدا چاپ می‌شود.

پروژه ۷: دماسنج رنگی با turtle

صورت مسئله: با استفاده از turtle یک دماسنج رنگی رسم کنید.

این خروجی است:
(یک مستطیل رنگی شبیه دماسنج روی صفحه رسم می‌شود)
import turtle
t = turtle.Turtle()
t.begin_fill()
for i in range(2):
  t.forward(50)
  t.left(90)
  t.forward(150)
  t.left(90)
t.end_fill()
turtle.done()

نکات: اگر begin_fill و end_fill نگذاریم، رنگی نمی‌شود.

پروژه ۸: رسم قلب با متن

صورت مسئله: برنامه‌ای بنویسید که با استفاده از * یک شکل قلبی ساده چاپ کند.

این خروجی است:
** **
**** ****
********
******
****
**
print(” ** ** “)
print(“**** ****”)
print(” ******** “)
print(” ****** “)
print(” **** “)
print(” ** “)

نکات: اگر فاصله‌ها درست نباشند، شکل قلبی خراب می‌شود.

پروژه ۹: شبیه‌سازی چراغ قوه

صورت مسئله: برنامه‌ای بنویسید که وقتی کاربر عدد ۱ وارد کند، چراغ روشن شود و اگر ۰ وارد کند، خاموش شود.

این خروجی است:
ورودی: ۱ → چراغ روشن
ورودی: ۰ → چراغ خاموش
print(“برای روشن کردن چراغ ۱ و برای خاموش کردن ۰ وارد کنید:”)
n = int(input())
if n == 1:
  print(“چراغ روشن”)
else:
&nbsp

پروژه ۱: محاسبه مصرف آب روزانه

صورت مسئله: برنامه‌ای بنویسید که تعداد لیوان‌های آب نوشیده شده در روز را گرفته و بررسی کند آیا به حد استاندارد (۸ لیوان) رسیده‌اید یا خیر.

این خروجی است:
تعداد لیوان: ۶
شما کمتر از حد استاندارد آب نوشیده‌اید.
print(“تعداد لیوان آب نوشیده شده را وارد کنید:”)
cups = int(input())
if cups >= 8:
  print(“شما به حد استاندارد رسیده‌اید.”)
else:
  print(“شما کمتر از حد استاندارد آب نوشیده‌اید.”)
نکات: اگر ورودی را به int تبدیل نکنیم، مقایسه درست انجام نمی‌شود.
توضیح خط به خط: گرفتن ورودی، بررسی شرط، چاپ پیام مناسب.

پروژه ۲: ماشین حساب خواب

صورت مسئله: برنامه‌ای بنویسید که تعداد ساعت خواب شبانه را گرفته و بررسی کند آیا کافی بوده یا خیر (حداقل ۷ ساعت).

این خروجی است:
ساعت خواب: ۵
خواب شما کافی نیست.
print(“چند ساعت خوابیده‌اید؟”)
hours = int(input())
if hours >= 7:
  print(“خواب شما کافی است.”)
else:
  print(“خواب شما کافی نیست.”)
نکات: اگر شرط را درست ننویسیم، نتیجه اشتباه می‌شود.
توضیح خط به خط: گرفتن ورودی، بررسی شرط، چاپ پیام.

پروژه ۳: بررسی ضربان قلب

صورت مسئله: برنامه‌ای بنویسید که ضربان قلب در دقیقه را گرفته و بررسی کند آیا در محدوده طبیعی (۶۰ تا ۱۰۰) است یا خیر.

این خروجی است:
ضربان: ۱۲۰
ضربان شما بالاتر از حد طبیعی است.
print(“ضربان قلب خود را وارد کنید:”)
rate = int(input())
if rate < 60:
  print(“ضربان شما کمتر از حد طبیعی است.”)
elif rate <= 100:
  print(“ضربان شما طبیعی است.”)
else:
  print(“ضربان شما بالاتر از حد طبیعی است.”)
نکات: اگر elif را درست ننویسیم، شرط‌ها تداخل پیدا می‌کنند.
توضیح خط به خط: گرفتن ورودی، بررسی سه حالت مختلف با if/elif/else.

پروژه ۴: شاخص مطالعه روزانه

صورت مسئله: برنامه‌ای بنویسید که تعداد صفحات مطالعه شده را گرفته و بررسی کند آیا به هدف روزانه (۲۰ صفحه) رسیده‌اید یا خیر.

این خروجی است:
صفحات مطالعه: ۲۵
آفرین! شما به هدف روزانه رسیده‌اید.
print(“تعداد صفحات مطالعه شده را وارد کنید:”)
pages = int(input())
if pages >= 20:
  print(“آفرین! شما به هدف روزانه رسیده‌اید.”)
else:
  print(“شما هنوز به هدف روزانه نرسیده‌اید.”)
نکات: اگر ورودی منفی باشد باید بررسی شود.
توضیح خط به خط: گرفتن ورودی، بررسی شرط، چاپ پیام.

پروژه ۵: شاخص فعالیت بدنی

صورت مسئله: برنامه‌ای بنویسید که تعداد قدم‌های روزانه را گرفته و بررسی کند آیا به حد استاندارد (۱۰,۰۰۰ قدم) رسیده‌اید یا خیر.

این خروجی است:
تعداد قدم: ۸۵۰۰
شما کمتر از حد استاندارد قدم زده‌اید.
print(“تعداد قدم‌های امروز را وارد کنید:”)
steps = int(input())
if steps >= 10000:
  print(“آفرین! شما به حد استاندارد رسیده‌اید.”)
else:
  print(“شما کمتر از حد استاندارد قدم زده‌اید.”)
نکات: اگر عدد خیلی بزرگ یا خیلی کوچک وارد شود باید بررسی شود.
توضیح خط به خط: گرفتن ورودی، بررسی شرط، چاپ پیام.

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

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