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

UptoLike

100
c = coef[1];
break;
case 1:
a = 0.0;
b = 0.0;
c = coef[0];
break;
default: throw new Exception("Данный набор
коэффициентов не определяет
рассматриваемые типы уравнений");
}
// определение типа уравнения по коэффициентам
if (a == 0)
if (b == 0)
// создается и возвращается
// объект класса Equation_0
return new Equation_0(c);
else
// создается и возвращается
// объект класса Equation_1
return new Equation_1(b, c);
else
// создается и возвращается
// объект класса Equation_2
return new Equation_2(a, b, c);
}
}
Классы для реализации уравнений будут иметь следующие
определения:
// базовый класс уравнения
public class Equation
{
protected const int infinity = Int32.MaxValue;
protected int count = -1;
public Equation(){}
// виртуальный метод решения уравнения
public virtual void Solve()
{
PrintSolution();
}
// статический метод создания объекта-уравнения
public static Equation CreateEquation
(params double[] coef)
{
double a, b, c;
                c = coef[1];
                break;
             case 1:
                a = 0.0;
                b = 0.0;
                c = coef[0];
                break;
             default: throw new Exception("Данный набор
                             коэффициентов не определяет
                             рассматриваемые типы уравнений");
          }
          // определение типа уравнения по коэффициентам
          if (a == 0)
             if (b == 0)
                // создается и возвращается
                // объект класса Equation_0
                return new Equation_0(c);
             else
                // создается и возвращается
                // объект класса Equation_1

                return new Equation_1(b, c);
           else
              // создается и возвращается
              // объект класса Equation_2
              return new Equation_2(a, b, c);
      }
 }

     Классы      для   реализации   уравнений   будут   иметь   следующие
определения:

    // базовый класс уравнения
   public class Equation
  {
      protected const int infinity = Int32.MaxValue;
      protected int count = -1;

       public Equation(){}

       // виртуальный метод решения уравнения
       public virtual void Solve()
       {
          PrintSolution();
       }

      // статический метод создания объекта-уравнения
      public static Equation CreateEquation
                                    (params double[] coef)
      {
         double a, b, c;

100