Как из array убрать NaN и поставить 0?

В языке C#, чтобы из массива удалить все значения NaN и заменить их на 0, можно воспользоваться следующим кодом:

double[] array = { 1.0, 2.0, double.NaN, 4.0, double.NaN };

for (int i = 0; i < array.Length; i++)
{
    if (double.IsNaN(array[i]))
    {
        array[i] = 0.0;
    }
}

// Проверка результата
foreach (double value in array)
{
    Console.WriteLine(value);
}

В этом коде мы объявили массив array и инициализировали его некоторыми значениями, включая NaN. Затем мы проходимся по каждому элементу массива с помощью цикла for, и используем метод double.IsNaN() для проверки, является ли текущий элемент NaN. Если это так, мы присваиваем ему значение 0.0.

После обработки массива мы можем проверить результаты, пройдясь по каждому элементу массива с помощью цикла foreach и выводя их на консоль с помощью Console.WriteLine(). В результате, все значения NaN будут заменены на 0.0.

Результат выполнения кода будет следующим:

1
2
0
4
0

Таким образом, все значения NaN были заменены на 0 в массиве array. Обратите внимание, что приведенный код будет работать только для массива типа double. Если у вас есть массив с другим типом данных, таким как float или decimal, вам необходимо будет использовать соответствующий метод для проверки NaN и присвоения значения 0.0.