Приближенное вычисление производной - C#

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

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

Есть производная вида Мы можем использовать формулу из определения производной, обозначив сколь угодно малую величину через такую же малую величину

h

Тогда мы сможем получить то, что называют the Forward Difference #### Как это реализовать? Пробовал сделать, но не очень понял и вышло что-то на подобии:
Листинг программы
  1. class Program
  2. {
  3. static void Main(string[] args)
  4. {
  5. double x0, X;
  6. x0 = Math.Cos(45);
  7. Console.WriteLine("Введите Шаг: ");
  8. X = Convert.ToDouble(Console.ReadLine());
  9. Console.WriteLine("Ответ: " + Diff(x0, X));
  10. Console.ReadLine();
  11. }
  12. static double Diff(double x0, double X)
  13. {
  14. double r1;
  15. double x = x0, h = X;
  16. return (Y1(x,h) - Y2(x) / h);
  17. }
  18. static double Y1(double x0, double X)
  19. {
  20. double x = x0, h = X;
  21. return x+h;
  22. }
  23. static double Y2(double x0)
  24. {
  25. double x = x0;
  26. return x;
  27. }
  28. }

Решение задачи: «Приближенное вычисление производной»

textual
Листинг программы
  1. using System;
  2.  
  3. namespace ConsoleApplication207
  4. {
  5.     internal class Program
  6.     {
  7.         private static void Main(string[] args)
  8.         {
  9.             //задаем функцию
  10.             Func<double, double> f = x => Math.Cos(x);
  11.             //вводим начальную точку
  12.             Console.Write("Точка X: ");
  13.             var x0 = double.Parse(Console.ReadLine());
  14.             //вводим дельту
  15.             Console.Write("dX: ");
  16.             var dx = double.Parse(Console.ReadLine());
  17.             //считаем производную в точке
  18.             var df = Diff(f, x0, dx);
  19.             Console.WriteLine("Производная: {0:0.000}", df);
  20.  
  21.             Console.ReadLine();
  22.         }
  23.  
  24.         private static double Diff(Func<double, double> f, double x, double dx)
  25.         {
  26.             return (f(x + dx) - f(x)) / dx;
  27.         }
  28.     }
  29. }

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


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

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

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

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

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

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