Метод итерации - C#

Узнай цену своей работы

Формулировка задачи:

Составить программу вычисления последовательности {an}, используя метод тремя разными способами (return, ref, out). Используя метод, найти номер того элемента итерационной последовательности, для которого выполняется условие |an| < e, где 0 < e < 0.01 задать датчиком случайных чисел. Значение x задать вводом. Значение члена последовательности {an} вычисляется по итерационной формуле: (-1)n * (x2n/(2n)!), n = 0, ∞.

Решение задачи: «Метод итерации»

textual
Листинг программы
using System;
using System.Linq;
 
class Program
{
    private static void Main(string[] args)
    {
        Console.WriteLine(Foo(2.5));
 
        Console.ReadKey();
 
    }
 
    static double Foo(double x)
    {
        int n = 0;
        double res = 0d;
        double eps = new Random().Next(0, 1000)/100000d;
 
        for(;;)
        {
            res = Math.Pow(-1d, n)*Math.Pow(x, 2*n)/Fact(2*n);
              n++;
            if (Math.Abs(res) < eps)
                break;
 
        } 
 
        Console.WriteLine("Iteration {0}",n);
        return res;
 
    }
 
    static int Fact(int n)
    {
        if(n<0)
            throw new ArgumentException();
        if (n < 2)
            return 1;
        return Enumerable.Range(1,n).Aggregate((i, i1) => i*i1);
    }
}

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


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

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

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