istomina_sofia

c# ряд тейлора

Dec 7th, 2021
942
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2.  
  3. namespace Лаба_2
  4. {
  5.     public static class function // класс функция
  6.     {
  7.         public static double Log(double x, double e, out int count)
  8.         {
  9.            
  10.                 double result1 = 0.0; int Count = 0; double result = 0.0;
  11.  
  12.                 double d = x;
  13.                 double n = 1.0;
  14.                 double division = 0.0;
  15.                
  16.                 do
  17.                 {
  18.                     division = (Math.Pow(d, n)) / n;
  19.                     result1 += division;
  20.  
  21.                     d *= (x * x);
  22.                     n += 2; // степень (2n +1)
  23.                     Count++;
  24.                     result = 2 * result1;
  25.  
  26.                 }
  27.                 while (Math.Abs(division) >= e);
  28.  
  29.                 count = Count;
  30.  
  31.                 return result;
  32.         }
  33.     }
  34.  
  35.     class Program
  36.     {
  37.         static void Main(string[] args)
  38.         {
  39.                Console.WriteLine("Задайте значения: ");   //ввод различных значений
  40.                 Console.Write("Xmin = ");
  41.                 double min = Convert.ToDouble(Console.ReadLine());
  42.                 Console.Write("Xmax = ");
  43.                 double max = Convert.ToDouble(Console.ReadLine());
  44.                 Console.Write("Шаг dx = ");
  45.                 double dx = Convert.ToDouble(Console.ReadLine());
  46.                 Console.Write("Точность e = ");
  47.                 double e = Convert.ToDouble(Console.ReadLine());
  48.            
  49.  
  50.             //создание таблицы
  51.  
  52.             string a = "  {0,10}  |  {1,10}  |  {2,10}  |"; // таблица
  53.             string b = string.Format(a, "x", "y", "N"); // название колонок
  54.  
  55.             Console.WriteLine(b);
  56.             Console.WriteLine(new string('=', b.Length));
  57.  
  58.             for (double c = min; c <= max; c += dx) //цикл, помещающий в таблицу полученные значения до тех пор, пока условие верно
  59.             {
  60.                 int N;
  61.                 double result = function.Log(c, e, out N);
  62.  
  63.  
  64.                 Console.WriteLine("  {0,10:F5}  |  {1,10:F5}  |  {2,10}  |", c, result, N);
  65.             }
  66.            
  67.             Console.ReadKey();
  68.         }
  69.     }
  70. }
RAW Paste Data