یک تابع پایتون بنویسید که یک لیست از ضرایب چندجمله‌ای و یک لیست از مقادیر x می‌گیرد، برای هر x مقدار چندجمله‌ای و مشتق درجه اول را محاسبه کند و همه متغیرهای محاسباتی محلی (از جمله ضرایب، x، مقدار، مشتق) را با استفاده از locals() در یک دیکشنری جمع‌آوری و به‌صورت یک لیست از دیکشنری‌ها برگرداند.

3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:32

0.0

برای حل این مسئله در هر تکرار روی مقادیر x از یک حلقه استفاده کنید، مقدار چندجمله‌ای را با جمع کردن coef[i]*x**i (با enumerate) محاسبه کنید و مشتق را با ضرب ضرایب در توان مربوطه حساب کنید. سپس با فراخوانی locals().copy() دیکشنری‌ای از متغیرهای محلی بسازید و آن را به لیستی اضافه کنید؛ از تغییر مستقیم محتویات locals() خودداری کنید. می‌توانید برای سرعت از numpy استفاده کنید اما برای مبتدیان استفاده از حلقه و enumerate کافی و روشن است.

توسط پژوهشگر در 202 روز قبل ساعت 02:32
دسته بندی ها: Python Python for beginner
arash در 202 روز قبل ساعت 09:20

استفاده از locals() برای جمع‌آوری متغیرهای محلی و تبدیل آن‌ها به دیکشنری مفید است، اما حتما از locals().copy() استفاده کنید تا تغییرات روی دیکشنری اصلی تأثیر نگذارد. برای مشتق درجه اول از فرمول i*coef[i]*x**(i-1) استفاده کنید و برای i=0 مشتق برابر با صفر است تا از خطای x**-1 جلوگیری شود. در هر گام با حلقه روی xها مقدار چندجمله‌ای را با coef[i]*x**i محاسبه کنید و سپس مقدار مشتق را نیز بدست آورید و در پایان هر بار locals().copy() را به‌عنوان ورودی دیکشنری به لیست خروجی اضافه کنید. اگر سرعت مهم است، numpy می‌تواند کمک کند، اما برای مبتدیان این حلقه و enumerate کافی و روشن است.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری