Практикум по курсу "Объектно-ориентированное программирование" на языке C#. Андрианова А.А - 54 стр.

UptoLike

53
// функция умножения полинома на число
public IMathObject Multiply(double chislo)
{
Polynom res = new Polynom(n);
for (int i = 0; i < n + 1; i++)
res[i] = chislo * a[i];
return res;
}
4.4. Использование интерфейса IMathObject
Приведем простой пример параметризованной функции,
демонстрирующей использование методов, которые были объявлены в
интерфейсе IMathObject.
static void Demo<T>(T ob1, T ob2) where T : IMathObject
{
Console.WriteLine(ob1);
Console.WriteLine(ob2);
Console.WriteLine("Сумма");
IMathObject res = ob1.Summa(ob2);
Console.WriteLine(res);
Console.WriteLine("Вычитание");
res = ob1.Substract(ob2);
Console.WriteLine(res);
Console.WriteLine("Умножение");
res = ob1.Multiply(ob2);
Console.WriteLine(res);
Console.WriteLine("Умножение на число");
res = ob1.Multiply(4);
Console.WriteLine(res);
}
Данный метод получает в качестве параметров два объекта
одинакового типа, который раскрывает интерфейс IMathObject. Далее с
этими объектами производятся те операции, которые определены в
интерфейсе суммирование этих объектов, получение их разности,
умножение объектов и умножение первого из них на число.
Продемонстрируем вызов этого метода:
static void Main(string[] args)
{
Console.WriteLine("Выберите режим работы с объектами:
1 - Матрица, 2 - Полином");
string str = Console.ReadLine();
switch (str)
{
     // функция умножения полинома на число
     public IMathObject Multiply(double chislo)
     {
        Polynom res = new Polynom(n);
        for (int i = 0; i < n + 1; i++)
           res[i] = chislo * a[i];
        return res;
     }

            4.4. Использование интерфейса IMathObject

     Приведем    простой   пример    параметризованной  функции,
демонстрирующей использование методов, которые были объявлены в
интерфейсе IMathObject.

     static void Demo(T ob1, T ob2) where T : IMathObject
     {
        Console.WriteLine(ob1);
        Console.WriteLine(ob2);
        Console.WriteLine("Сумма");
        IMathObject res = ob1.Summa(ob2);
        Console.WriteLine(res);
        Console.WriteLine("Вычитание");
        res = ob1.Substract(ob2);
        Console.WriteLine(res);
        Console.WriteLine("Умножение");
        res = ob1.Multiply(ob2);
        Console.WriteLine(res);
        Console.WriteLine("Умножение на число");
        res = ob1.Multiply(4);
        Console.WriteLine(res);
     }

     Данный метод получает в качестве параметров два объекта
одинакового типа, который раскрывает интерфейс IMathObject. Далее с
этими объектами производятся те операции, которые определены в
интерфейсе – суммирование этих объектов, получение их разности,
умножение объектов и умножение первого из них на число.
     Продемонстрируем вызов этого метода:

     static void Main(string[] args)
     {
        Console.WriteLine("Выберите режим работы с объектами:
                                        1 - Матрица, 2 - Полином");
        string str = Console.ReadLine();
        switch (str)
        {

53