با استفاده از Array.Find در C# برنامه‌ای بنویسید که در یک آرایه بزرگ از اعداد اعشاری (double) اولین مقدار را بیابد که بزرگ‌تر از یک آستانه داده‌شده و کمتر از یک حد بالایی باشد و آن را نمایش دهد.

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

0.0

برای حل این مسئله از متد Array.Find استفاده کنید که آرایه و یک Predicate (معمولاً با عبارت لامبدا) می‌گیرد: مثلا var result = Array.Find(arr, v => v > threshold && v

توسط پژوهشگر در 221 روز قبل ساعت 01:11
دسته بندی ها: C# C# for beginner
arman در 221 روز قبل ساعت 14:17

برای تشخیص نبودن نتیجه، از Array.Exists استفاده کنید یا نتیجه را به Nullable تبدیل کنید چون Array.Find مقدار پیش‌فرض را بازمی‌گرداند (double → 0.0) وقتی هیچ عنصری پیدا نشود. شرط Predicate را دقیق بنویسید تا فقط مقادیر بین threshold و max بیابد. در آرایه‌های بزرگ می‌توانید از PLINQ یا Span و الگوریتم‌های موازی برای کاهش زمان اجرا استفاده کنید. اگر به اندیس عنصر هم نیاز دارید، از FindIndex استفاده کنید تا بتوانید به مقدار بدون نگرانی از مقدار پیش‌فرض دست یابید.

گزارش

1 پاسخ

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

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