تمرینای تکمیلی فصل ۴
تمرین اول
فرض کنین یه ماشین از حالت ایستاده و در لحظه صفر شروع به حرکت میکنه. تابعی بسازین که با وارد کردن سرعت ماشین در لحظه t و سرعت v بهمون شتاب اون ماشین رو بده. ضمناً فرمول شتاب با مفروضات بالا اینه:a=v/t. یعنی با مقادیر ۲۰ و ۱۰ باید چنین خروجی ای رو داشته باشیم:
راهنمایی: این کارو میتونین از چندین طریق انجام بدین مث تعریف و یا عدم تعریف یه تابع واسه انجام محاسبات که در ادامه سه حالتش رو بیان کردیم.)
راه حل پیشنهادی اول (با تعریف یک تابع و فراخوانیش):
راه حل پیشنهادی دوم (بدون تعریف متغیر در تابع تعریف شده):
راه حل پیشنهادی سوم (بدون تعریف تابع):
تمرین دوم
حالا تو تابع تعریف شده ی بالا، فرض کنین سرعت و زمان اولیه صفر نباشه. درواقع، فرمولمون شبیه به فرمول زیر میشه:.
با این توضیح، یه برنامه ایجاد کنین که چهار تا مقدار v1, v2, t1, t2 رو بگیره و محاسبات رو انجام بده. میتونین v1 و t1 رو بصورت پبشفرض برابر صفر قرار بدین که با یه تیر دو هدف رو زده باشین. هم تابع تون کارکرد دو متغیره (تمرین قبلی) رو داشته باشه و هم بشه بصورت چهار متغیره ازش استفاده کرد.
راه حل پیشنهادی:
ضمنا، تمام حالتایی که بالا داشتیم هم میتونه اینجا رخ بده (میتونیم واسه پرینت گرفتن از داده رشته ای فرمت شده استفاده کنیم، دو تا ورودی هم واسه سرعت و زمان اولیه بهش اضافه کنیم و…).
تمرین دوم
مشکل کدای زیر چیه و بدون اجرا تو vscode حدس بزنین باید چیکار کنیم که مشکل برطرف بشه؟ حالا میتونین این تابعُ تو vscode با استفاده از دیباگینگ اشکل یابی کنین.
ازونجایی که خروجی تابع تعریف شده داره یه کاری رو انجام میده (پرینت گرفتن از یه عبارت) نمیتونه ضرب در یه عدد بشه. انگاری داریم میگیم پرینت گرفتن رو ضرب در ۱۰ کن که امکان پذیر نیست. واسه این که بتونیم این کار رو انجام بدیم باید طوری تابع sum رو تعریف کنیم که بهمون یه مقدار برگردونه تا اون رو به ۱۰ ضرب کنیم. تفاوت توابعی که یه کاری انجام میدن و توابعی که یه مقدارو برمیگردونن اینجا مشخص میشه. پس اینجوری بازنویسی رو انجام میدیم:
درباره Mbonjakhi
مرتضی یه معلمه که عاشق یاد دادن و یاد گرفتنه. از 13 سالگیش زبان خونده والان دانشجوی دکترای آموزش زبان انگلیسی تو دانشگاه حکیم سبزواریه. از سال 93 رسما داره زبان درس میده و از سال 94 مدیر آموزشی یه آموزشگاه زبانه. علاوه بر زبان انگلیسی تو کار با کامپیوتر، HTML، CSS ،JS و پایتونم آشنایی داره و در حال حاضر داره دوره های بین المللی رو واسه کاربرای ایرانی دوبله میکنه.
نوشته های بیشتر از Mbonjakhi
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.