Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсач.docx
Скачиваний:
12
Добавлен:
20.03.2016
Размер:
157.67 Кб
Скачать

Программа 2

using System;

public interface IElement

{ void newE();

int summ(); }

public class MyElement : IElement

{ public string name;

public int e1;

public int e2;

public void newE()

{ name = Console.ReadLine();

e1 = Convert.ToInt32(Console.ReadLine());

e2 = Convert.ToInt32(Console.ReadLine());

}

public int summ()

{

return (e1 + e2);

}

}

delegate int Delegate1(IElement[] arr);

public class Test

{ static int MaxElem (IElement[] arr)

{ int n = 0;

int max = arr[0].summ();

for (int i = 1; i < 5; i ++)

{ if (arr[i].summ() > max)

{ max = arr[i].summ();

n = i;

}

}

return n;

}

public static void Main()

{

Delegate1 d1 = new Delegate1(MaxElem);

IElement[] array1 = new IElement[5];

array1[0] = new MyElement();

array1[0].newE();

array1[1] = new MyElement();

array1[1].newE();

array1[2] = new MyElement();

array1[2].newE();

array1[3] = new MyElement();

array1[3].newE();

array1[4] = new MyElement();

array1[4].newE();

int c = d1(array1);

Console.WriteLine("Номер элемента с максимальной суммой:");

Console.WriteLine(c);

}

}

Заключение

В ходе изучения данной темы моей целью было рассмотреть, как используются общие типы при описании интерфейсов и делегатов, и рассмотреть это на примерах задач поиска в массивах.

При детальном изучении данной темы я выяснила, что использование в программе и интерфейсов и делегатов значительно упрощает написание программы и решение поставленной задачи, так как сама программа может быть описана намного короче и стать более просто для понимания.

Литература

  1. Л.Е. Потапова «Объектно-ориентированное программирование на языке С#»

  2. Т.Е. Павловская «Программирование на языке С#»

  3. Tdoc.ru «Новинки языка C#.NET»

  4. Википедия

  5. Э. Стиллмен, Дж. Грин «Изучаем С#»

Витебск, 2015

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]