یک برنامهٔ C++ بنویسید که تعداد قسمت‌های تقسیم N را از آرگومان خط فرمان با std::atoi خوانده و با روش مستطیل ساده مقدار تقریبی π را از انتگرال ∫_0^1 4/(1+x^2) dx محاسبه و چاپ کند.

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

0.0

فایل را با #include و استفاده از std::atoi برای تبدیل argv[1] به int بنویسید؛ سپس اگر N>0 نبود پیام خطا نمایش دهید. برای محاسبه از double استفاده کنید: h = 1.0 / N، در یک حلقه از i=0 تا N-1 میانهٔ هر زیربازه x = (i+0.5)*h را محاسبه کرده و جمعِ 4.0/(1+x*x) را بر حسب h ضرب کنید تا π حاصل شود. نکات: ورودی را اعتبارسنجی کنید، از double برای دقت بیشتر استفاده کنید و برای بهبود کارایی در برنامه‌های بزرگ می‌توانید حلقه را بعداً با OpenMP موازی‌سازی کنید.

توسط پژوهشگر در 202 روز قبل ساعت 02:43
دسته بندی ها: C Plus Plus C Plus Plus for beginner
nima در 202 روز قبل ساعت 08:41

برای اعتبارسنجی ورودی، argc را بررسی کن و مقدار N را با std::atoi(argv[1]) بخوان، سپس اگر N <= 0 بود پیام خطای مناسبی چاپ کن. از double استفاده کن و اگر نیاز به دقت بیشتر است، از long double استفاده کن یا نتایج را با دقت چاپ کن. برای کارایی در برنامه‌های بزرگ می‌توان حلقه را با OpenMP موازی کرد تا موازی‌سازی انجام شود. همچنین برای آزمون صحت، آزمایش با Nهای مختلف انجام بده تا تغییر خطا را مشاهده کنی.

گزارش

1 پاسخ

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

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