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