Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методпособие_2_семестр

.pdf
Скачиваний:
12
Добавлен:
02.06.2015
Размер:
703.61 Кб
Скачать

timer.Start();

}

//8

private void timer_Tick(object sender, EventArgs e) { if (isGameOver())

return;

Random random = new Random(); int iNum, jNum;

while (true)

{

 

 

iNum = random.Next(0,

sizeField);

 

jNum = random.Next(0,

sizeField);

 

if (arrGame[iNum,

jNum] < valGuessEmpty)

{

arrGame[iNum,

jNum] += 10;

 

countItems++;

 

 

 

if (arrGame[iNum,

jNum] > valGuessEmpty)

{

countGuess++;

 

 

if (arrGame[iNum, jNum] == valGuessTriangle) countTrianglePC++;

else if (arrGame[iNum, jNum] == valGuessEllipse) countEllipsePC++;

}

 

 

doShowGrid();

 

 

doShowCount();

 

 

pctField_Paint(this, null);

 

timer.Stop();

 

 

break;

 

 

}

 

 

}

 

 

isGameOver();

 

 

}

 

 

//7

 

 

private bool isGameOver()

{

 

if (countGuess == countTriangle + countEllipse ||

 

countItems == sizeField * sizeField)

{

timer.Stop();

 

 

if (countTriangleUser + countEllipseUser > countTrianglePC + countEllipsePC) MessageBox.Show("Вы выйграли со счетом " + (countTriangleUser +

countEllipseUser).ToString() +

":" + (countTrianglePC + countEllipsePC).ToString(), "Итог игры");

else if (countTriangleUser + countEllipseUser < countTrianglePC + countEllipsePC) MessageBox.Show("Вы проиграли со счетом " + (countTriangleUser +

countEllipseUser).ToString() +

":" + (countTrianglePC + countEllipsePC).ToString(), "Итог игры");

else

MessageBox.Show("Ничья " + (countTriangleUser + countEllipseUser).ToString() + ":" + (countTrianglePC + countEllipsePC).ToString(), "Итог игры");

return true;

}

else

return false;

}

 

private void btnShow_Click(object sender, EventArgs e)

{

if(btnShow.Text.CompareTo("->") == 0){

 

this.Width = grid.Left + grid.Width + 25;

 

btnShow.Text = "<-";

 

}

 

else{

 

21

this.Width = btnShow.Left + btnShow.Width + 25; btnShow.Text = "->";

}

 

 

}

 

 

 

private void mnuSettings_Click(object sender, EventArgs e)

{

 

 

FormSettings frmSet = new FormSettings();

 

 

 

if (frmSet.ShowDialog() == DialogResult.OK)

 

 

 

pctField_Paint(this, null);

 

 

 

}

 

 

 

//5

 

 

 

private void pctUser_Paint(object sender, PaintEventArgs e)

{

 

 

DrawFigure.doDrawTriangle(graphUser, DrawFigure.penTriangle, DrawFigure.brushTriangle,

30 / 10, 0, 0);

 

 

 

DrawFigure.doDrawEllipse(graphUser, DrawFigure.penEllipse, DrawFigure.brushEllipse, 30 /

10,

30,

0);

 

 

 

}

 

 

 

//6

 

 

 

private void pctPC_Paint(object sender, PaintEventArgs e)

{

 

 

DrawFigure.doDrawTriangle(graphPC, DrawFigure.penTriangle, DrawFigure.brushTriangle, 30

/ 10, 0, 0);

 

 

 

DrawFigure.doDrawEllipse(graphPC, DrawFigure.penEllipse, DrawFigure.brushEllipse, 30 /

10,

30,

0);

 

 

 

}

 

 

 

private void mnuExit_Click(object sender, EventArgs e)

{

 

 

Close();

 

 

}

}

 

 

 

 

22

Лабораторная работа №9. Работа с одномерными и двумерными массивами

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

План работы: в течение четырех занятий студент должен изучить материал текущей лабораторной работы и продемонстрировать свои навыки преподавателю. В

результате чего студент получает две оценки: за приложение и за изученный материал.

Задание: Создать приложение для работы с массивами в соответствии с заданным

вариантом.

Требование к приложению:

Предусмотреть возможность работы приложения с двумерными и одномерными массивами;

Предусмотреть возможность сохранения и открытия одномерных и двумерных массивов;

Обрабатывать все возможные исключительные и проблемные ситуации,

которые могут привести к ошибке и некорректному завершению приложения.

Требование к отчету:

1.Титульный лист: номер и название лабораторной работы.

2.Текст задания.

3.Форма в процессе проектирования и выполнения.

4.Структура приложения.

5.Таблица свойств объектов.

6.Список идентификаторов.

7.Блок-схема алгоритма.

8.Программные коды.

23

Лабораторная работа №10. Массивы и коллекции

Цель работы: создать приложение с графическим интерфейсом для работы с массивами и коллекциями.

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

Задание: Создать приложение для работы с массивами в соответствии с заданным

вариантом.

Требование к приложению:

Реализовать приложение в виде трех форм:

o Главная форма с двумя кнопками: «Массив int[]», «Коллекция» o Форма «Массив int[]»

oФорма «Коллекция»

Решение заданий должно выполняться в соответствии с заголовком формы,

соответственно при помощи массива int[], или коллекций: List, ArrayList, LinkedList

(вид коллекции на усмотрение студента);

Обрабатывать все возможные исключительные и проблемные ситуации,

которые могут привести к ошибке и некорректному завершению приложения.

Требование к отчету:

1.Титульный лист: номер и название лабораторной работы.

2.Текст задания.

3.Форма в процессе проектирования и выполнения.

4.Структура приложения.

5.Таблица свойств объектов.

6.Список идентификаторов.

7.Блок-схема алгоритма.

8.Программные коды.

24

Лабораторная работа №11. Работа с коллекциями

Цель работы: создать приложение для работы с коллекциями.

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

Задание: создать приложение в соответствии с заданным вариантом.

Требования к приложению:

В случае, если коллекцию возможно использовать как обобщенную, так и необобщенную, необходимо работать с коллекцией как с обобщенной. В качестве типов данных допускается использование как любых базовых типов данных (типы значений), так и ссылочных, например, string, по усмотрению студента;

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

Вывод для коллекций, состоящих из пары «ключ-значение» предусмотреть вывод в трех вариантах на выбор пользователя:

o ключ-значение,

o только ключи,

oтолько значения.

После любого действия, изменяющего значение списка, или порядок их следования выводить значение списка на экран;

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

Обрабатывать все возможные исключительные и проблемные ситуации,

которые могут привести к ошибке и некорректному завершению приложения.

Требование к отчету:

1.Титульный лист: номер и название лабораторной работы.

2.Текст задания.

3.Форма в процессе проектирования.

4.Структура приложения.

5.Таблица свойств объектов.

25

6.Список идентификаторов.

7.Программные коды.

Ссылки на MSDN:

http://msdn.microsoft.com/ru-ru/library/dd412070.aspx http://msdn.microsoft.com/ru-ru/library/he2s3bh7.aspx http://msdn.microsoft.com/ru-ru/library/f7fta44c.aspx http://msdn.microsoft.com/ru-ru/library/system.collections.queue.aspx http://msdn.microsoft.com/ru-ru/library/ms132319.aspx http://msdn.microsoft.com/ru-ru/library/system.collections.arraylist.aspx http://msdn.microsoft.com/ru-ru/library/system.collections.hashtable.aspx http://msdn.microsoft.com/ru-ru/library/system.collections.stack.aspx http://msdn.microsoft.com/ru-ru/library/bb359438.aspx http://msdn.microsoft.com/ru-ru/library/xfhwa508.aspx

26

Лабораторная работа №12. Работа со строками

Цель работы: создать приложение для работы со строками.

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

Задание: создать приложение в соответствии с заданным вариантом.

Требования к приложению:

Обрабатывать все возможные исключительные и проблемные ситуации, которые могут привести к ошибке и некорректному завершению приложения.

Требование к отчету:

1.Титульный лист: номер и название лабораторной работы.

2.Текст задания.

3.Форма в процессе проектирования.

4.Структура приложения.

5.Таблица свойств объектов.

6.Список идентификаторов.

7.Программные коды.

Ссылка на MSDN: http://msdn.microsoft.com/ru-ru/library/system.string.aspx

27