یک برنامه پایتون بنویسید که با استفاده از جمع ریمانی میانی (midpoint Riemann sum) مساحت زیر منحنی y = x**2 را بین a و b تقریب زده و تعداد بخشها N را از ورودی با تبدیل به int دریافت کند.
4.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:31 0.0
برای حل، از ورودی گرفتن a و b به صورت float و گرفتن N با استفاده از تابع int() استفاده کنید؛ سپس عرض هر بخش را dx = (b-a)/N محاسبه کنید و با یک حلقه for برای هر بخش نقطه میانی xi = a + (i+0.5)*dx را بسازید و مجموع f(xi)*dx را محاسبه کنید. نکات: بررسی کنید N>0 باشد، تبدیل رشتهها به float/int را با try/except کنترل کنید و برای سرعت یا سادگی میتوانید از numpy برای برداریسازی جمع استفاده کنید، اما پیادهسازی با حلقههای ساده برای سطح مبتدی مناسب است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای اطمینان از صحت ورودیها، با استفاده از try/except مقدار a و b را به float و مقدار N را به int تبدیل کنید و مطمئن شوید N>0؛ اگر a>b بود، دامنه را با یک جابهجایی ساده (swap) صعودی کنید تا dx مثبت بماند. در محاسبه عرض هر بخش، dx = (b-a)/N است و برای هر بخش i از 0 تا N-1، xi = a + (i+0.5)*dx و مجموع f(xi)*dx را اضافه کنید. این پیادهسازی با حلقههای ساده برای مبتدیان مناسب است و در صورت نیاز میتوانید از numpy برای جمع برداری استفاده کنید. برای بررسی صحت نتیجه میتوانید مقدار تقریبی را با مقدار دقیق انتگرال بین a و b برابر (b^3 - a^3)/3 مقایسه کنید.
گزارش