Планирование уроков на учебный год (по учебнику Н.Д. Угриновича, профильный уровень)



Уроки 31 - 34
§1.10. Графы и их исследование с использованием языков объектно-ориентированного программирования Visual Basic и Turbo Delphi




Содержание урока

1.10.1. Введение в теорию графов
1.10.2. Изучение графов на языке Visual Basic
1.10.3. Изучение графов на языке Turbo Delphi

Проект «Построение остовного связного дерева графа» на языке Turbo Delphi

Событийная процедура вывода в графическое поле вершин графа

Событийная процедура вывода элементов матрицы смежности взвешенного ориентированного графа

Событийная процедура вывода элементов матрицы смежности взвешенного неориентированного графа

Событийная процедура построения остовного связаного дерева минимального веса

Контрольные вопросы


1.10.3. Изучение графов на языке Turbo Delphi


Проект «Построение остовного связного дерева графа» на языке Turbo Delphi


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

Проект «Построение остовного связного дерева графа» на языке Turbo Delphi

1. Запустить систему объектно-ориентированного программирования Turbo Delphi командой [Программы - Borland Developer Studio 2006-Turbo Delphi].

Создадим графический интерфейс проекта.

2. Поместить на форму(рис. 1.71):

• графическое поле Image1 для рисования первоначального графа;
• графическое поле Image2 для рисования остовного связного дерева минимального веса;
• кнопку Button1 для запуска событийной процедуры вывода вершин графа в первое графическое поле;
• кнопку Button2 для запуска событийной процедуры вывода элементов матрицы смежности взвешенного ориентированного графа;
• управляющий элемент StringGrid1 для вывода элементов матрицы смежности связного взвешенного ориентированного графа;
• кнопку Button3 для запуска событийной процедуры вывода элементов матрицы смежности взвешенного неориентированного графа;
• управляющий элемент StringGrid2 для вывода элементов матрицы смежности связного взвешенного неориентированного графа;
• кнопку Button4 для запуска событийной процедуры вывода во второе графическое поле остовного связного дерева;
• управляющий элемент StringGrid3 для вывода весов ребер остовного связного дерева;
• надпись Label1 для вывода суммы весов остовного связного дерева минимального веса;
• надписи для вывода пояснительных текстов.

Рис. 1.71. Графический интерфейс проекта

3. Объявить:

• целочисленные пятиэлементные массивы X [ I ] и Y [ I ] для хранения координат вершин графа;
• целочисленный двумерный массив R [ I ] для хранения весов ребер графа;
• целочисленный двумерный массив R1 [ I ] для хранения весов ребер остовного связного дерева минимального веса;
• целочисленные переменные I, N, и К, используемые в качестве счетчиков циклов;
• целочисленную переменную S для хранения суммы весов ребер остовного связного дерева минимального веса;
• целочисленную переменную А для хранения значения, возвращаемого функцией MessageDlg();
• строковые переменные strN и strK для хранения номеров точек, возвращаемых функцией InputBox ().


var
X, Y: array[1..5] of integer;
R, R1: array[1. . 5,1. . 5] of integer;
I, N, K, A: byte;
S: integer;
strN, strK: string;


Следующая страница Событийная процедура вывода в графическое поле вершин графа



Cкачать материалы урока





Наверх