Формирование графовой модели заданного фрагмента принципиальной электрической схемы - онлайн-чтение

 

 


Страница 1 из 3

Аннотация


В данной пояснительной записке приведено описание алгоритма и исходного кода программы формирования графовой модели заданного фрагмента принципиальной электрической схемы. Разработаны схемы алгоритмов решения задачи. В среде Microsoft Visual Studio 2005 (C++) разработана и отлажена программа, реализующая представленные алгоритмы. Также представлены результаты решения контрольных примеров, выполненные с помощью разработанной программы.

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

графовая модель программа

Содержание


1.Описание программы

.1Общие сведения

.2Функциональное назначение

.3Описание логической структуры

.4Cтруктурная схема основной программы

.5Алгоритм функции vvod()

.6 Алгоритм функции int **matr()

.Описание контрольного примера

Приложение


1. Описание программы


.1 Общие сведения


Программа формирования графовой модели заданного фрагмента принципиальной электрической схемы написана в среде Microsoft Visual Studio 2005.

Программа имеет имя «PraktikaDasha».

Программа запускается на выполнение при помощи Visual Studio 2005 C++, в случае же присутствия исполняемого файла можно произвести запуск из операционной системы Windows.


.2 Функциональное назначение


Программа предназначена для формирования графовой модели заданного фрагмента принципиальной электрической схемы.

Программа выполняет следующие функции:

. Чтение списка по цепям из представленного текстового файла.

. Формирование списка по цепям данного графа (с использованием динамической структуры - линейного списка)

. Формирование и вывод матрицы свяхности.

. Рисование графовой модели (цепь-дерево) заданного фрагмента.


.3 Описание логической структуры


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

Функция CepCont *vvod_file (char file_name [ ]) позволяет выбрать файл и исходными данными и сформировать линейный динамический список.

Функция void vivod_spis(CepCont *st, HWND hwndEdit) выводит полученный список по цепям на экран.

Функция int kol_elem(CepCont *st) подсчитывает количество элементов.

Функция void del_matr(int **matr, int k) удаляет динамическую матрицу.

Функция int **memory (int k) выделяет память под динамическую матрицу.

Функция int **form_matr(CepCont *st, int k) преобразовывает список в матрицу.

Функция void vivod_matr (int **matr, int k, HWND hwndEdit) выводит полученную матрицу связности на экран.

Функция void save_matr(char file_name [ ], int **matr, int k) сохраняет матрицу в файл.

Функция void del_spis(CepConrt *BegSpis) удаляет динамический список.

Функция MyDlgProc (HWND hwnd, UINT msg, WPARAM wp, LPARAM lp) обработка сообщений диалога.


1.4 Cтруктурная схема основной программы



1.5 Алгоритм функции vvod():



1.6 Алгоритм функции int **matr()



2. Описание контрольного примера


Дана схема варианта №12:



Составим входное описание заданной схемы в виде списка по цепям:


3

1

1

3


2

1

2


2

2

1


4

3

2

2

1


2

3

1


3

2

1

5


2

3

2


3

2

3

4

По входному описанию схемы сформируем матрицу связности


1 1 0 0 0 1

0 1 0 0 0 1

1 0 1 1 0 0

0 1 0 0 2 0

0 1 0 0 1 0

Предметы

Все предметы »

 

 

Актуальные Контрольные работы по программному обеспечению, программированию