Разработать интерфейс и класс для ряда Маклорена - 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;
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.8 из 5
Похожие ответы