Объектно-ориентированное программирование на С#. Андрианова А.А - 71 стр.

UptoLike

71
case 0:
Console.WriteLine("Корней нет");
break;
case Int32.MaxValue:
Console.WriteLine("Любое x является
решением");
break;
default:
Console.WriteLine("Уравнение еще не решено");
break;
}
}
}
class Program
{
static void Main(string[] args)
{
try
{
Equation e = new Equation(1,2,3);
// вызов метода решения уравнения через делегат
e.solve();
e.PrintSolution();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
Делегаты могут также использоваться и в качестве параметров других
методов. Проиллюстрируем это на примере решения следующей задачи:
найти корень уравнения
0)( xF
методом деления отрезка пополам,
предусмотрев возможность использования в качестве
)(xF
различных
непрерывных математических функций.
Создадим класс Roots для вычисления корней уравнения. В него
добавим статический метод Root(), который находит корень уравнения
методом деления отрезка пополам. Параметрами метода являются концы
отрезка, на котором осуществляется поиск корня, задаваемая точность
решения и делегат, указывающий на метод вычисления
)(xF
.
                   case 0:
                      Console.WriteLine("Корней нет");
                      break;
                   case Int32.MaxValue:
                      Console.WriteLine("Любое x является
                                                    решением");
                      break;
                   default:
                      Console.WriteLine("Уравнение еще не решено");
                      break;
               }
           }
       }

       class Program
       {
          static void Main(string[] args)
          {
             try
             {
                 Equation e = new Equation(1,2,3);
                 // вызов метода решения уравнения через делегат
                 e.solve();
                 e.PrintSolution();
             }
             catch (Exception ex)
             {
                 Console.WriteLine(ex.Message);
             }
          }
       }

     Делегаты могут также использоваться и в качестве параметров других
методов. Проиллюстрируем это на примере решения следующей задачи:
найти корень уравнения F ( x)  0 методом деления отрезка пополам,
предусмотрев возможность использования в качестве F (x) различных
непрерывных математических функций.
      Создадим класс Roots для вычисления корней уравнения. В него
добавим статический метод Root(), который находит корень уравнения
методом деления отрезка пополам. Параметрами метода являются концы
отрезка, на котором осуществляется поиск корня, задаваемая точность
решения и делегат, указывающий на метод вычисления F (x) .




                                                                     71