برنامه‌ای به زبان C++ بنویسید که با استفاده از std::cin عرض و ارتفاع یک پنجره دسکتاپ (به پیکسل) و تعداد بایت برای هر پیکسل را دریافت کرده و فضای حافظه لازم برای ذخیره تصویر آن پنجره را به صورت بایت، کیلوبایت و مگابایت چاپ کند.

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

0.0

با استفاده از هدر iostream و ورودی std::cin مقادیر را بخوانید، سپس حاصل‌ضرب عرض×ارتفاع×بایت_برای_هر_پیکسل را محاسبه کنید (برای جلوگیری از سرریز از نوع‌های صحیح بزرگ مانند long long استفاده کنید). خروجی بایت را مستقیم چاپ کنید و برای کیلوبایت و مگابایت مقادیر را بر 1024 و 1024^2 تقسیم کنید؛ می‌توانید برای نمایش اعشاری از نوع double و تنظیم دقت نماشی استفاده کنید. این تمرین به مفاهیم پایه‌ای I/O در C++، محاسبات ساده مرتبط با برنامه‌های GUI دسکتاپ و ملاحظات حافظه در سطح سیستم می‌پردازد.

توسط پژوهشگر در 201 روز قبل ساعت 03:22
دسته بندی ها: C Plus Plus C Plus Plus for beginner
nima در 201 روز قبل ساعت 06:41

نکته کلیدی این تمرین جلوگیری از سرریز با استفاده از انواع عددی بزرگ است (مانند unsigned long long). برای نمایش مقادیر KB و MB از اعداد اعشاری و تنظیم مقدار دقت با std::fixed و std::setprecision استفاده کنید. توجه کنید که خروجی بایت به صورت مستقیم چاپ می‌شود و برای انجام تبدیل به KB/MB از تقسیم با double و 1024.0 و 1024.0*1024.0 استفاده کنید تا دقت حفظ شود. همچنین به اهمیت ورودی معتبر (اندازه‌های غیرمنفی) اشاره کنید تا رفتار برنامه پیش‌بینی‌پذیر باشد.

گزارش

1 پاسخ

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

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