با استفاده از C++ برنامه‌ای بنویسید که مجموع اعداد از 1 تا N را محاسبه کند، زمان اجرای بخش محاسبه را با استفاده از هدر اندازه‌گیری کند و هم نتیجه و هم مدت زمان اجرا را در یک فایل متنی ذخیره نماید.

3.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:42

0.0

برای حل این مسئله از chrono::high_resolution_clock یا steady_clock برای گرفتن زمان قبل و بعد از بخش محاسبه استفاده کنید و تفاوت را به میلی‌ثانیه یا میکروثانیه تبدیل کنید. برای نوشتن خروجی از (مثلاً std::ofstream) استفاده کرده و نتیجهٔ مجموع و مدت زمان را در یک فایل متنی بنویسید. نکات: برای مقادیر بزرگ از نوع‌های صحیح بزرگ‌تر مانند long long بهره ببرید تا سرریز نشود، و برای دیدن زمان قابل اندازه‌گیری مقدار N را کافی بزرگ انتخاب کنید؛ برنامه را با استاندارد C++17 یا بالاتر کامپایل کنید.

توسط پژوهشگر در 221 روز قبل ساعت 01:42
دسته بندی ها: C Plus Plus C Plus Plus for beginner
arash در 221 روز قبل ساعت 12:16

به جای محاسبه با حلقه، از فرمول شناخته‌شده N(N+1)/2 استفاده کنید تا زمان محاسبه کاهش یابد. با استفاده از steady_clock یا high_resolution_clock زمان فقط بخش محاسبه را اندازه بگیرید و تفاوت را به میلی‌ثانیه یا میکروثانیه گزارش کنید. از نوع داده‌ای مناسب مانند long long یا unsigned long long برای جلوگیری از سرریز استفاده کنید و N را به اندازه کافی بزرگ انتخاب کنید تا تفاوت زمان قابل اندازه‌گیری شود. برای خروجی، از std::ofstream استفاده کنید و نتیجه و زمان را در یک فایل بنویسید و مراقب بازنشانی و خطاهای باز بودن فایل باشید.

گزارش

1 پاسخ

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

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