Решение системы уравнений методом простой итерации - C#

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

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

Добрый вечер! Помогите пожалуйста написать код к следующей задаче: Решить систему уравнений с точностью E=10^-4 методом простой интерации. Заранее благодарен за помощь.

Решение задачи: «Решение системы уравнений методом простой итерации»

textual
Листинг программы
  1. class Program
  2. {
  3.     delegate double[] Func(double[] x);
  4.  
  5.     static double Measure(double[] x, double[] y)
  6.     {
  7.         double s = 0;
  8.         for (int i = 0; i < x.Length; i++)
  9.             s += (x[i] - y[i]) * (x[i] - y[i]);
  10.         return Math.Sqrt(s);
  11.     }
  12.  
  13.     static double[] Base(double[] x)
  14.     {
  15.         return new double[]
  16.         {
  17.             4.15 * x[0] - 3.20 * x[1] + 1.11 * x[2] + 5.40 * x[3] - 7.1,
  18.             0.87 * x[0] - 2.14 * x[1] - 2.14 * x[2] - 3.21 * x[3] - 3.06,
  19.             3.12 * x[0] - 1.00 * x[1] + 2.13 * x[2] + 0.00 * x[3] + 0.92,
  20.             2.11 * x[0] + 3.26 * x[1] + 2.17 * x[2] - 8.14 * x[3] + 7.5
  21.         };
  22.     }
  23.  
  24.     static double[] Next(double[] x, double[] l, Func f)
  25.     {
  26.         double[] t = f(x);
  27.         for (int i = 0; i < x.Length; i++)
  28.             t[i] = x[i] - t[i] * l[i];
  29.  
  30.         return t;
  31.     }
  32.        
  33.     static void Main(string[] args)
  34.     {
  35.         // Начальное приближение
  36.         double[] x = { 0, 0, 0, 0 }, y = { 1, 1, 1, 1 };
  37.         // коэффициент
  38.         double[] l = { 0.01, -0.32, 0.3, -0.16 }; // метод Ньютона l = 1/f'(x0)
  39.         // точность
  40.         double e = 1e-4;
  41.  
  42.         while (Measure(x, y) > e)
  43.         {
  44.             x = Next(y = x, l, Base);
  45.         }
  46.  
  47.         for (int i = 0; i < x.Length; i++ )
  48.         {
  49.             Console.WriteLine("x[{0}] = {1}", i, x[i]);
  50.         }
  51.                
  52.         Console.ReadLine();
  53.     }
  54.  
  55. }

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


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

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

9   голосов , оценка 3.889 из 5

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

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

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