برنامهای به زبان C++ بنویسید که با استفاده از std::cin عرض و ارتفاع یک پنجره دسکتاپ (به پیکسل) و تعداد بایت برای هر پیکسل را دریافت کرده و فضای حافظه لازم برای ذخیره تصویر آن پنجره را به صورت بایت، کیلوبایت و مگابایت چاپ کند.
4.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:22 0.0
با استفاده از هدر iostream و ورودی std::cin مقادیر را بخوانید، سپس حاصلضرب عرض×ارتفاع×بایت_برای_هر_پیکسل را محاسبه کنید (برای جلوگیری از سرریز از نوعهای صحیح بزرگ مانند long long استفاده کنید). خروجی بایت را مستقیم چاپ کنید و برای کیلوبایت و مگابایت مقادیر را بر 1024 و 1024^2 تقسیم کنید؛ میتوانید برای نمایش اعشاری از نوع double و تنظیم دقت نماشی استفاده کنید. این تمرین به مفاهیم پایهای I/O در C++، محاسبات ساده مرتبط با برنامههای GUI دسکتاپ و ملاحظات حافظه در سطح سیستم میپردازد.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته کلیدی این تمرین جلوگیری از سرریز با استفاده از انواع عددی بزرگ است (مانند unsigned long long). برای نمایش مقادیر KB و MB از اعداد اعشاری و تنظیم مقدار دقت با std::fixed و std::setprecision استفاده کنید. توجه کنید که خروجی بایت به صورت مستقیم چاپ میشود و برای انجام تبدیل به KB/MB از تقسیم با double و 1024.0 و 1024.0*1024.0 استفاده کنید تا دقت حفظ شود. همچنین به اهمیت ورودی معتبر (اندازههای غیرمنفی) اشاره کنید تا رفتار برنامه پیشبینیپذیر باشد.
گزارش