با استفاده از متد Array.Find در C# یک آرایه از اعداد صحیح را بررسی کنید و اولین عددی را که بزرگتر از 1000 و زوج است پیدا کنید و در صورت نبودن چنین عددی مقدار -1 را چاپ کنید.
4.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:50 0.0
برای حل این مسئله از متد Array.Find همراه با یک predicate (مثلاً lambda n => n > 1000 && n % 2 == 0) استفاده کنید؛ توجه کنید که برای نوعهای مقداردهیشده مانند int، Array.Find در صورت پیدا نشدن مقدار پیشفرض (0) را برمیگرداند، بنابراین برای تشخیص واقعی نبودن پاسخ بهتر است ابتدا با Array.Exists همان شرط را بررسی کنید یا از Array.FindIndex استفاده کنید و در صورت بازگشت -1 مقدار خروجی را -1 قرار دهید. این روش در زمینههایی مثل پردازش دادهها (Data Analytics)، برنامهنویسی سیستم و محاسبات با کارایی بالا (HPC) برای فیلتر سریع آرایهها کاربردی است؛ فضای نام System را اضافه کنید و از عبارات lambda برای سادگی کد بهره ببرید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای استفاده صحیح از Array.Find در اعداد صحیح، توجه کنید که اگر هیچ عنصری مطابق شرط نباشد، مقدار پیشفرض نوع int (یعنی 0) برمیگردد. برای تشخیص قطعی وجود نتیجه، میتوانید از Array.Exists با همان predicate استفاده کنید یا از Array.FindIndex بهره ببرید. مثلاً میتوانید شرط n > 1000 و n % 2 == 0 را با Array.Exists بررسی کنید و اگر وجود داشت مقدار اولین عنصر را با Array.Find به دست آورید و در غیر این صورت -1 چاپ کنید. استفاده از System و lambda به نوشتن کدی مختصر و کارا کمک میکند و در تحلیل دادهها و پردازشهای سریع میتواند مفید باشد.
گزارش