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

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

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

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

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

textual
Листинг программы
  1. using System;
  2. using System.Linq;
  3.  
  4. class Program
  5. {
  6.     private static void Main(string[] args)
  7.     {
  8.         Console.WriteLine(Foo(2.5));
  9.  
  10.         Console.ReadKey();
  11.  
  12.     }
  13.  
  14.     static double Foo(double x)
  15.     {
  16.         int n = 0;
  17.         double res = 0d;
  18.         double eps = new Random().Next(0, 1000)/100000d;
  19.  
  20.         for(;;)
  21.         {
  22.             res = Math.Pow(-1d, n)*Math.Pow(x, 2*n)/Fact(2*n);
  23.               n++;
  24.             if (Math.Abs(res) < eps)
  25.                 break;
  26.  
  27.         }
  28.  
  29.         Console.WriteLine("Iteration {0}",n);
  30.         return res;
  31.  
  32.     }
  33.  
  34.     static int Fact(int n)
  35.     {
  36.         if(n<0)
  37.             throw new ArgumentException();
  38.         if (n < 2)
  39.             return 1;
  40.         return Enumerable.Range(1,n).Aggregate((i, i1) => i*i1);
  41.     }
  42. }

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


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

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

10   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы