Разработать интерфейс и класс для ряда Маклорена - C#
Формулировка задачи:
Разработать интерфейс и класс-реализацию для генерации последовательности и нахождения суммы ряда Маклорена функции f(x) = ex.
Решение задачи: «Разработать интерфейс и класс для ряда Маклорена»
textual
Листинг программы
using System; using System.Collections.Generic; namespace ConsoleApplication207 { internal class Program { private static void Main(string[] args) { var series = new ExponentMaclaurin(); var val = series.GetSum(1.5, 0.00001d); Console.WriteLine("Exp(1.5) = {0:0.00000}", val ); Console.ReadLine(); } } interface ISeries { IEnumerable<double> GetItems(double x); double GetSum(double x, double epsylon); } class ExponentMaclaurin : ISeries { public IEnumerable<double> GetItems(double x) { var fact = 1; var xx = 1d; for(int i=1;;i++) { yield return xx/fact; xx *= x; fact *= i; } } public double GetSum(double x, double epsylon) { var sum = 0d; foreach(var item in GetItems(x)) { sum += item; if (item < epsylon) break; } return sum; } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д