Здравствуйте! Необходима помощь с правильной записью условия в цикле в методе GetRes. Прикрепил скриншот функции и текущий код ниже.
static int Factorial(int i)
{
if (i <= 1)
return 1;
return i * Factorial(i - 1);
}
static void GetRes(double x)
{
double res, sum = 0;
int n = 1;
while (Math.Abs(x) < Math.E) // здесь нужна помощь
{
res = Math.Round(((Math.Pow(-1, n) * Math.Pow(x, n)) / Factorial(n)), 2); // здесь нужна помощь
Console.WriteLine(res);
sum += res;
n++;
if (Console.KeyAvailable) break;
}
Console.WriteLine("\nСума: " + sum);
}
вариант с заранее известным количеством слагаемых:
public static int Factorial(int i)
{
if (i <= 1)
return 1;
return i * Factorial(i - 1);
}
public static void GetRes(double x, int it)
{
double res, sum = 0;
for(int n = 0; n < it; n++)
{
res = Math.Round(((Math.Pow(-1, n) * Math.Pow(x, n)) / Factorial(n)), 2);
Console.WriteLine(res);
sum += res;
}
Console.WriteLine("\nСума: " + sum);
}
вариант с заданной точностью:
public static int Factorial(int i)
{
if (i <= 1)
return 1;
return i * Factorial(i - 1);
}
public static void GetRes(double x, double ac)
{
double res = ac, sum = 0;
int n = 0;
while (Math.Abs(res) >=ac)
{
res = Math.Round(((Math.Pow(-1, n) * Math.Pow(x, n)) / Factorial(n)), 2);
Console.WriteLine(res);
sum += res;
n++;
}
Console.WriteLine("\nСума: " + sum);
}
но осторожно: последовательность должна сходится, я этого не проверяю
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники