Помощь в написании студенческих работ
Антистрессовый сервис

Практика. 
Использование общих типов при описании интерфейсов и делегатов на примерах задач поиска в массивах

РефератПомощь в написанииУзнать стоимостьмоей работы

Public class MyElement: IElement. IElement array1 = new IElement; For (int i = 1; i < 5; i ++). Name = Console. ReadLine (); Public static void Main (). If (arr. summ () == param). Public interface IElement. Array1 = new MyElement (); Array1 = new MyElement (); Array1 = new MyElement (); Array1 = new MyElement (); Array1 = new MyElement (); Console. WriteLine (c);}. Int c = d1 (array1,16); Public… Читать ещё >

Практика. Использование общих типов при описании интерфейсов и делегатов на примерах задач поиска в массивах (реферат, курсовая, диплом, контрольная)

Для более полного представления того, что я пыталась описать выше, предлагаю для рассмотрения два примера, где использовалось описание и интерфейсов и делегатов с помощью общих типов.

Задачи составлены аналогично друг другу, отличием является лишь условие поиска в массиве.

А именно:

  • 1. Поиск заданного элемента в массиве.
  • 2. Поиск максимального элемента в массиве.

Программа 1

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, int param);

public class Test.

{ // метод для поиска элемента с заданной суммой в массиве (если его нет — возвращает -1).

static int Find (IElement[] arr, int param).

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

{if (arr[i]. summ () == param).

{return i;}}.

return -1;}.

public static void Main ().

{Delegate1 d1 = new Delegate1 (Find);

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,16);

Console. WriteLine («Номер элемента с заданной суммой:»);

Console. WriteLine (c);}.

}.

Показать весь текст
Заполнить форму текущей работой