یک برنامهٔ C++ بنویسید که یک کلاس Sensor ساده شبیهسازی کند که تابع readValue مقدار خام را میگیرد، در صورت مقدار خارج از بازه یا کد خطای سنسور استثناهای مناسب از پرتاب کند و در main با بلوک try/catch آنها را مدیریت و پیام خطا را چاپ نماید.
10.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:31 0.0
از هدر استفاده کنید و برای مقادیر نامعتبر از std::out_of_range و برای خطاهای عمومی سنسور از std::runtime_error یا std::invalid_argument استفاده کنید؛ در main با try و catch (ترجیحاً catch به صورت const std::exception&) پیام what() را چاپ کنید. نکات: استثناها را با پیام واضح پرتاب کنید، کلاس ساده نگه دارید (مثلاً یک متد readValue که ورودی عددی میگیرد و تبدیل/اعتبارسنجی انجام میدهد)، و برنامه را با g++ -std=c++17 کامپایل و چند سناریوی تست را اجرا کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای ساده نگه داشتن کلاس Sensor، تنها یک متد readValue با ورودی عددی دریافت کنید و اعتبارسنجی را انجام دهید. اگر مقدار خارج از بازه باشد، با std::out_of_range پرتاب کنید و برای خطاهای عمومی از std::runtime_error یا std::invalid_argument استفاده کنید تا پیام واضحی بدهد. در main با بلوک try/catch و catch( const std::exception& e ) پیام what() را چاپ کنید تا همه استثناها به طور یکنواخت گزارش شوند. همچنین توصیه میشود بازه قابل قبول را ثابتکنید (مثلاً با constexpr) و چند سناریوی تست شامل مقدار صحیح، مقدار خارج از بازه و ورودی نامعتبر را امتحان کنید. اجرای برنامه با g++ -std=c++17 را فراموش نکنید.
گزارش