با استفاده از iterator های C++ و هدر <iterator>، برنامهای بنویسید که مختصات چند آبجکت دوبعدی را در یک std::vector ذخیره کند و با پیمایش با iterator میانگین موقعیت (centroid) آنها را محاسبه و چاپ کند.
3.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:16 0.0
یک بردار از زوجهای عددی (مثلاً std::vector>) بسازید و با استفاده از std::begin و std::end یا iteratorها (با auto) آن را پیمایش کنید تا مجموع مختصات x و y را محاسبه کنید؛ سپس با استفاده از std::distance تعداد عناصر را بدست آورده و میانگین را محاسبه کنید. از هدر <iterator> برای توابع کمکی مانند std::begin/std::end و std::distance استفاده کنید، خالی بودن بردار را بررسی کنید و مقادیر اعشاری را با دقت مناسب چاپ کنید — این روش در بازیسازی برای محاسبه مرکز دوربین و در محاسبات عددی برای میانگینگیری نقاط کاربرد دارد.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته کلیدی اینکه برای محاسبه مرکز با iterators، مقادیر x و y را با دقت اعشاری مناسب جمع کنید و از long double برای افزایش دقت استفاده کنید. استفاده از std::begin/std::end یا iterators با auto به شما اجازه میدهد فقط با یک حلقه ساده به مجموعها و شمار دست یابید. قبل از محاسبه میانگین بردار را چک کنید تا خالی نباشد و از std::distance برای بدست آوردن تعداد عناصر استفاده کنید. برای خروجی، مرکز را به صورت std::pair<long double,long double> یا ساختار مناسب چاپ کنید و مقدار اعشار را با دقت مناسب نمایش دهید.
گزارش