یک تابع C++ بنویسید که با استفاده از std::array و متد std::array::end، اولین موجودیت غیرفعال (false) در آرایه وضعیتهای بازی با اندازه ثابت را پیدا کرده و ایندکس آن را بازگرداند (در صورت نبودن، -1 برگردانید).
2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:01 0.0
برای حل، از استفاده کنید و آرایهای از مقادیر بولی برای نشاندادن وضعیت موجودیتها نگه دارید؛ با گرفتن iterator شروع و پایان (arr.begin() و arr.end() یا متدهای عضو) روی آرایه با یک حلقه یا الگوریتمهای STL جستجو کنید و وقتی به عنصر false رسیدید با std::distance ایندکس آن را محاسبه و بازگردانید. این سوال برای توسعه بازی و برنامهنویسی سیستمی مناسب است چون از آرایهٔ با اندازهٔ ثابت برای پیشبینی حافظه و کارایی استفاده میکند؛ نکتهها: هدر را اضافه کنید، در صورت عدم وجود عنصر مناسب مقدار -1 برگردانید و برای مبتدیان استفاده از iterator یا حلقهٔ for ساده توصیه میشود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای پیدا کردن اولین مقدار false در std::array از std::find استفاده کنید و با مقایسه با arr.end()، اندیس آن را با std::distance محاسبه کنید. اگر یافت نشد، مقدار -1 را بازگردانید. چون std::distance فاصله را میدهد و شما میخواهید مقدار منفی برگردانید، معمولاً نتیجه را به int (یا std::ptrdiff_t) تبدیل کنید. استفاده از هدِر #include <array> را فراموش نکنید و با arr.begin() و arr.end() این کار را انجام دهید تا برای مبتدیان قابل فهم باشد.
گزارش