Ряды Тейлора - C# (181706)
Формулировка задачи:
Здравствуйте! Помогите решить данную задачу. Заранее спасибо.
Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, на интервале от xнач до xкон с шагом dx с точностью е. Таблицу снабдить заголовком и шапкой. Каждая строка таблицы должна содержать значение аргумента, значение функции и количество просуммированных членов ряда.
Решение задачи: «Ряды Тейлора»
textual
Листинг программы
using System; namespace CyberForum { public static class Program { public static void Main(string[] args) { Console.Write("Введите значение X нач: "); double min = double.Parse(Console.ReadLine()); Console.Write("Введите значение X кон: "); double max = double.Parse(Console.ReadLine()); Console.Write("Введите шаг приращения dx: "); double delta = double.Parse(Console.ReadLine()); Console.Write("Введите точность e: "); double epsilon = double.Parse(Console.ReadLine()); string headerFormat = " {0,10} | {1,10} | {2,10} |"; string header = string.Format(headerFormat, "x", "y", "count"); Console.WriteLine(header); Console.WriteLine(new string('=', header.Length)); for (double argument = min; argument <= max; argument += delta) { int count; double result = Functions.Arth(argument, epsilon, out count); Console.WriteLine(" {0,10:F5} | {1,10:F5} | {2,10} |", argument, result, count); } } } public static class Functions { public static double Arth(double x, double epsilon, out int elementsCount) { if ((x < -1.0) || (x > 1.0)) { throw new ArgumentOutOfRangeException("x", "Значение х должно находиться в границах (-1; 1)"); } double result = 0.0; int count = 0; double denominator = x; double nominator = 1.0; double division = 0.0; do { division = denominator / nominator; result += division; denominator *= (x * x); nominator += 2; count++; } while (Math.Abs(division) >= epsilon); elementsCount = count; return result; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д