یک برنامه C++ بنویسید که یک std::vector از سرعت ذرات (یا موجودات در یک بازی) را گرفته، با استفاده از iteratorهای موجود در هدر و توابع مرتبط میانگین و انحراف معیار را محاسبه کند و سرعت کمینه و بیشینه را با اشاره‌گرهای iterator پیدا و چاپ نماید.

2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:01

0.0

برای حل، از هدرهای همراه با , , , , استفاده کنید. با iteratorها (مثلاً auto it = std::begin(v); it != std::end(v); ++it) یا توابع استاندارد مانند std::min_element و std::max_element که iterator برمی‌گردانند، مقادیر کمینه/بیشینه را پیدا کنید و با std::accumulate روی بازهٔ begin/end یا با پیمایش iteratorها مجموع را محاسبه کرده و سپس انحراف معیار را با فرمول ریشهٔ میانگین مربعات اختلاف‌ها حساب کنید.

توسط پژوهشگر در 220 روز قبل ساعت 02:01
دسته بندی ها: C Plus Plus C Plus Plus for beginner
nima در 220 روز قبل ساعت 11:13

برای سادگی و کارایی، از هدرهای <vector>، <numeric>، <algorithm>، <cmath> و <iostream> استفاده کنید و با iteratorهای std::begin و std::end به داده‌ها دست یابید. میانگین را با std::accumulate روی بازه begin تا end محاسبه کنید و برای انحراف معیار از sqrt( (1/n) Σ (x_i - mean)^2 ) بهره ببرید. برای کمینه و بیشینه از std::min_element و std::max_element استفاده کنید تا ایترهای مربوطه و مقدار کمینه/بیشینه را بیابید و با تفاوت ایتر با begin اندیس آن را چاپ کنید. توصیه کنید از double برای سرعت‌ها استفاده کنید و پیش از محاسبات تهی بودن vector و صحت اندازه‌ها را بررسی کنید.

گزارش

1 پاسخ

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

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