با استفاده از itertools.count و سبک برنامه‌نویسی تابعی، تابعی بنویسید که مجموع سری ۱/n² را از n=1 جمع کند تا زمانی که جمله بعدی کوچک‌تر از eps شود و در پایان مجموع تقریبی و تعداد جمله‌های استفاده‌شده را برگرداند.

3.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:23

0.0

از ماژول itertools تابع count را برای تولید پیوسته اعداد طبیعی استفاده کنید، برای هر n جمله 1/(n**2) را بسازید (می‌توان از map یا یک لامبدا استفاده کرد) و در یک حلقه تا رسیدن به شرط ε جمع را افزایش دهید. نکته‌های مفید: eps را به‌صورت float بگیرید، از یک شمارنده برای تعداد جمله‌ها استفاده کنید و برای جلوگیری از حلقهٔ بی‌نهایت شرط خروج را دقیق بررسی کنید؛ این روش در حوزه محاسبات عددی و اسکریپت‌نویسی برای تقریب سری‌ها کاربرد دارد.

توسط پژوهشگر در 201 روز قبل ساعت 03:23
دسته بندی ها: Python Python for beginner
nima در 201 روز قبل ساعت 06:35

استفاده از itertools.count برای تولید nهای پی‌درپی گزینه خوبی است تا وقتی که جمله بعدی 1/n^2 از eps کوچکتر شود جمع را پایان دهد. برای بهبود دقت جمع از math.fsum به‌جای جمع ساده استفاده کنید تا خطای گردکردن کاهش یابد. حین پیاده‌سازی شرط خروج را به‌دقت ارزیابی کنید تا از حلقهٔ بی‌پایان جلوگیری شود (مثلاً با بررسی مقدار جمله قبل از اضافه‌کردن یا با محدودکردن حداکثر تکرار). eps را به‌عنوان float تعریف کنید و از تبدیل مناسب n استفاده کنید تا نتیجه‌ای قابل اعتماد بدست آید.

گزارش

1 پاسخ

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

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