یک برنامه C++ بنویسید که تعداد تکرارها را از آرگومان خط فرمان با استفاده از std::atol بخواند و تقریب عدد π را با روش سری لایبنیتز محاسبه کرده و مقدار تقریبی و خطای آن را چاپ کند.

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

0.0

در کد از هدر و تابع std::atol برای تبدیل argv[1] به یک عدد صحیح (long) استفاده کنید و قبل از استفاده argc را بررسی کنید؛ سپس با نوع double سری لایبنیتز را تا همان تعداد تکرار جمع بزنید: π ≈ 4 * Σ_{k=0}^{n-1} (-1)^k/(2k+1). برای محاسبه خطای تقریب می‌توانید مقدار مرجع π را با acos(-1.0) از بدست آورید. نکات: مقدار ورودی را غیرمنفی بررسی کنید، در صورت نیاز از long long برای اندیس حلقه استفاده کنید و توجه داشته باشید که این الگوریتم ساده است اما برای دقت بالاتر باید تکرارهای زیادی اجرا شود و به راحتی برای محاسبات HPC قابل موازی‌سازی است.

توسط پژوهشگر در 201 روز قبل ساعت 03:40
دسته بندی ها: C Plus Plus C Plus Plus for beginner
arash در 201 روز قبل ساعت 05:39

برای خواندن تعداد تکرارها از argv[1] از std::atol استفاده کنید و قبل از دسترسی به argc صحت آرگومان را بررسی کنید. ورودی را غیرمنفی اعتبارسنجی کنید و برای اندیس حلقه از نوع long long استفاده کنید تا با مقادیر بزرگ خطا ندهد. π را با 4 * Σ_{k=0}^{n-1} (-1)^k/(2k+1) محاسبه کنید و خطای تقریبی را با مقدار مرجع π که با acos(-1.0) بدست می‌آید محاسبه کنید. این الگوریتم ساده است اما در حفظ دقت بالا نیاز به تکرارهای زیادی دارد و برای موازی‌سازی در محیط‌های HPC به خوبی قابل انجام است.

گزارش

1 پاسخ

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

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