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

Федеральное государственное бюджетное образовательное учреждение Высшего профессионального образования

Московский государственный технологический университет «СТАНКИН»

(ФГБОУ ВПО МГТУ «СТАНКИН»)

Факультет Кафедра

ИТС ИТ и ВС

КУРСОВАЯ РАБОТА

ПО ПРЕДМЕТУ «ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ»

Выполнил:

Студент 2 курса

группы ИДБ–12–04

Долгов П.М.

Принял:

Преподаватель

Лакунина О.Н.

Москва 2014

ТЕКСТ ЗАДАНИЯ

Написать программу, реализующую поставленную задачу в виде многооконного приложения. Задача заключается в смене элементов квадратной матрицы между 1-2 и 3-4 четвертями. Матрица делится на четверти ровно по середине.

Описание интерфейса:

При запуске программы создаётся окно выбора интерфейса (SDI и MDI).

Далее создается главное окно с пунктами меню: Файл, Правка, Окно, Справка.

В вкладке (Файл) есть действия: Выход - закрыть программу.

В вкладке (Правка) есть действия: Размерность матрицы.

В вкладке (Окно) есть: Начальные условия, Решение.

В вкладке (Справка) есть: О программе

Описание спроектированных окон:

Окно Выбор интерфейса:

Это окно предназначено для выбора интерфейса SDI или MDI.

Окно Главное окно:

Это главное окно с панелью управления. Во вкладке «Файл» есть функция выхода из программы, «Выход».

Окно Размерность матрицы:

В этом окне задаётся размерность матрицы. Размерность не может быть меньше 2, т.к в противном случае матрица не будет иметь решения.

Окно Начальные условия:

В этом окне задаются начальные условия. Присутствует datagridview для ввода данных, также есть кнопка «Сгенерировать случайно»[для заполнения массива случайными значениями от -99 до 99]) и «Выделить диагонали».

Окно Решение:

В этом окне происходит смена значений 1-2 и 3-4 четвертей массива при нажатии кнопки «Поменять местами»

Окно О программе:

В этом окне представлены сведения о программе.

Использованные основные переменные:

Основные переменные

nud

Размерность матрицы

Основные переменные класса

[,] mas

Матрица, получаемая из DataGridView

in1, in2

Индексы для индексатора

i, j

Индексы для работы с массивами

Основные переменные статического класса

Massiv

Хранит исходную матрицу

N

Хранит размерность матрицы

SV

Хранит свойство для разделения матрицы

POL

Хранит номер середины матрицы

Блок-схема алгоритма решения задачи:

Текст программы:

Файл Class1

namespace WindowsFormsApplication3

{

static public class Class //статический класс для хранения исходной матрицы, свойств

{

public static int[,] Massiv; //объявление статического массива

public static int N,SV,POL; //объявление переменных

public static void SuperMas(int n) //выделение памяти для массива

{

N = n;

Massiv = new int[N, N];

}

public static void kraska(int svojstvo, int polovina) //получение свойства и параметра

{

SV = svojstvo;

POL = polovina;

}

}

class obrabotka //класс в котором обрабатывается массив

{

public int[,] mas; //объявление массива

public obrabotka(){mas = new int[Class.N,Class.N];} //конструктор

public int this[int in1, int in2] //индексатор для заполнения массива

{

get

{

return mas[in1, in2];

}

set

{

mas[in1, in2] = value;

}

}

public void matrica() //функция передачи значений матрицы в статический класс

{

for (int i = 0; i < Class.N; i++)

for (int j = 0; j < Class.N; j++)

Class.Massiv[i, j] = mas[i, j];

}

}

}

Файл Выбор интерфейса

namespace WindowsFormsApplication3

{

public partial class Form2 : Form

{

public Form2()

{

InitializeComponent(); //инициализация формы

}

private void Form2_Load(object sender, EventArgs e) //событие загрузки формы

{

}

private void button1_Click(object sender, EventArgs e) //событие происходящее при нажатии первой кнопки(SDI)

{

Form f3 = new Form3(); //объявление новой формы главного окна

f3.Show(); //показ формы

Hide(); //сворачивание формы выбора интерфейса

}

private void button2_Click(object sender, EventArgs e) //событие происходящее при нажатии второй кнопки(MDI)

{

Form f3 = new Form3(); // объявление новой формы главного окна

f3.IsMdiContainer = true; //объявление формы главного меню как MDI

f3.Show(); //показ формы

Hide();//сворачивание формы выбора интерфейса

}

}

}

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