.NET 4.x Формируем массив function[], из значений функции Y - C#
Формулировка задачи:
Ребят помогите. Никак голова не варит. Есть часть кода и я думаю она не правильно написана. Проверьте и расскажите что к чему. Массив arguments[] имеет любые вещественные числа.
Заранее спасибо.
Формируем массив function[], из значений функции Y, для чисел из массива arguments[].
Функция такая: После всего этого оно должно вывести элементы массива. double[] function = new double[arguments.Length]; //Обявляем массив функции.
for (int i = 0; i < arguments.Length; i++) // Запускаем цикл.
{
if ((-20 < arguments[i]) && (arguments[i] < 30)) // -2 < x < 30
{
function[i] = System.Math.Cosh(Math.Pow(2, arguments[i] -2 ) + 1); //cosh(x^(-2)+1)
}
else if (arguments[i] > 30) //Если больше 30.
{
function[i] = System.Math.Log(0.1 * arguments[i] - 5); //ln(0.1x-5)
}
else function[i] = System.Math.Pow(arguments[i], -1.3); // x^(-1.3)
}Решение задачи: «.NET 4.x Формируем массив function[], из значений функции Y»
textual
Листинг программы
//...
double[] function = arguments.Select(func).ToArray();
Console.WriteLine(string.Join(" ", function));
Console.ReadLine();
//...
double func(double x)
{
if(x > 30)
return System.Math.Log(0.1 * x - 5);
if(x > -20)
return System.Math.Cosh(1 / x / x + 1);
return System.Math.Pow(x, -1.3);
}