با استفاده از C++ برنامهای بنویسید که مجموع اعداد از 1 تا N را محاسبه کند، زمان اجرای بخش محاسبه را با استفاده از هدر اندازهگیری کند و هم نتیجه و هم مدت زمان اجرا را در یک فایل متنی ذخیره نماید.
3.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:42 0.0
برای حل این مسئله از chrono::high_resolution_clock یا steady_clock برای گرفتن زمان قبل و بعد از بخش محاسبه استفاده کنید و تفاوت را به میلیثانیه یا میکروثانیه تبدیل کنید. برای نوشتن خروجی از (مثلاً std::ofstream) استفاده کرده و نتیجهٔ مجموع و مدت زمان را در یک فایل متنی بنویسید. نکات: برای مقادیر بزرگ از نوعهای صحیح بزرگتر مانند long long بهره ببرید تا سرریز نشود، و برای دیدن زمان قابل اندازهگیری مقدار N را کافی بزرگ انتخاب کنید؛ برنامه را با استاندارد C++17 یا بالاتر کامپایل کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
به جای محاسبه با حلقه، از فرمول شناختهشده N(N+1)/2 استفاده کنید تا زمان محاسبه کاهش یابد. با استفاده از steady_clock یا high_resolution_clock زمان فقط بخش محاسبه را اندازه بگیرید و تفاوت را به میلیثانیه یا میکروثانیه گزارش کنید. از نوع دادهای مناسب مانند long long یا unsigned long long برای جلوگیری از سرریز استفاده کنید و N را به اندازه کافی بزرگ انتخاب کنید تا تفاوت زمان قابل اندازهگیری شود. برای خروجی، از std::ofstream استفاده کنید و نتیجه و زمان را در یک فایل بنویسید و مراقب بازنشانی و خطاهای باز بودن فایل باشید.
گزارش