یک برنامه کنسول در C# بنویسید که دو آرایه‌ی عددی را با استفاده از List و متد AddRange ترکیب کند، عناصر تکراری را حذف کرده و مجموع و میانگین عناصر یکتا را محاسبه و چاپ کند.

12.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 00:30

0.0

برای حل این مسئله ابتدا دو آرایه را به List تبدیل کنید یا یک List جدید ساخته و با AddRange هر آرایه را به آن اضافه کنید؛ برای حذف تکراری‌ها می‌توانید از LINQ با Distinct() یا از یک HashSet استفاده کنید. جهت بهبود کارایی (مربوط به HPC) قبل از اضافه کردن عناصر ظرفیت لیست را با مجموع طول دو آرایه تنظیم کنید تا از تخصیص‌های مکرر حافظه جلوگیری شود؛ در پایان مجموع و میانگین را با متدهای Sum() و Average() یا محاسبه دستی نمایش دهید. از فضای نام‌های System.Collections.Generic و System.Linq استفاده کنید.

توسط پژوهشگر در 198 روز قبل ساعت 00:30
دسته بندی ها: C# C# for beginner
arash در 198 روز قبل ساعت 00:31

پیش از استفاده از AddRange ظرفیت لیست را با مجموع طول دو آرایه تنظیم کنید تا از تخصیص‌های مکرر حافظه جلوگیری شود و کارایی بهتری داشته باشید. برای حذف تکراری‌ها می‌توانید از LINQ.Distinct() استفاده کنید یا برای عملکرد بهتر و حذف سریع‌تر از HashSet بهره ببرید (HashSet ترتیب را حفظ نمی‌کند اگر این مهم است). مراقب باشید که برای محاسبه میانگین روی مجموعه‌های خالی از Average() مستقیم استفاده نکنید چون استثنا می‌دهد—یا ابتدا count را بررسی کنید یا از DefaultIfEmpty استفاده کنید. حتماً فضای نام‌های System.Collections.Generic و System.Linq را اضافه کنید و هنگام جمع زدن اعداد بزرگ احتمال سرریز را در نظر بگیرید.

گزارش

1 پاسخ

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

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