Математическое моделирование физических задач на ЭВМ
Рефераты >> Физика >> Математическое моделирование физических задач на ЭВМ

Приложение

I. Рисунки с видами экрана при работе с программой 20

Рисунок №1. Общий вид экрана 20

Рисунок №2. Меню – Файл . 21

Рисунок №3. Открытие файла, сохраненного на диске 22

Рисунок №4. Вид экрана с изображением схемы 23

Рисунок №5. Вывод результата вычисления токов в ветвях схемы . 24

Рисунок №6. Просмотр направления токов в ветвях схемы . 25

Рисунок №7. Вид экрана при сохранении схемы в файл 26

Рисунок №8. Меню – Окно . 27

Рисунок №9. Окно помощи выводимое на экран при нажатии клавиши F1 . 29

II. Листинг программы на языке Паскаль 30

1. Основная программа 30

2. Модуль с библиотекой элементов 36

3. Модуль вычисления токов ветвей . 48

I. Рисунки с видами экрана при работе с программой

Рисунок №1. Общий вид экрана.

Меню

Меню элементов

Рабочее поле

Указатель мыши

Строка статуса

Индекатор свободной памяти Рисунок №2. Меню – Файл.

Меню – Файл

Рисунок №3. Открытие файла, сохраненного на диске.

Открытие файла со схемой

Рисунок №4. Вид экрана с изображением схемы.

Изображение схемы

Расчет схемы

Рисунок №5. Вывод результата вычисления токов в ветвях схемы.

Результаты вычислений

Токи

Резисторы Рисунок №6. Просмотр направления токов в ветвях схемы.

Значения токов

Направления токов

Рисунок №7. Вид экрана при сохранении схемы в файл.

Сохранение схемы

Рисунок №8. Меню – Окно.

Работа с окнами

Рисунок №9. Вид экрана при закрытии всех окон.

Указатель мыши

Меню

Строка статуса

Информация о свободной памяти Рисунок №10. Окно помощи выводимое на экран при нажатии клавиши F1.

Закрытие окна

Окно с помощью программы

Горизонтальный скролинг

Вертикальный скролинг

II. Листинг программы на языке Паскаль.

1. Основная программа

Program UzPotenc; {Метод узловых потенциалов}

{$F+,O+,X+,V-,R-,I-,S-}

Uses

Crt, Applic1, Objects, Drivers, Dialogs, Views, Menus, App, StdDlg,

Fonts, HelpFile, MsgBox, TxtRead, WInDows, PalObj, Grv16, DemoHlp,

Types2;

Type TNewApp=Object(TMyApp)

Procedure ReCounte; Virtual;

End;

Var MyApp:TNewApp;

Type

PMyCollection=^TMyCollection;

TMyCollection=Object(TCollection)

Procedure FreeItem(Item:poInter); Virtual;

End;

Procedure CurView; {Просмотр значений токов}

Var R,R1:TRect;

D:PDialog;

L:PListBox;

C:PMyCollection;

Sb:PScrollBar;

i:Integer;

s:String;

Begin

Sb:=Nil;

MyApp.ShemeWInDow^.GeTextentWIn(R);

R.B.X:=R.A.X+(R.B.X-R.A.X) Div 4;

D:=New(PDialog,Init(R,'Значения токов'));

D^.GeTextentWIn(R);

Inc(R.A.Y,CurrentFont^.Height*2);

R1.Copy(R);

R1.A.X:=R1.B.X-CurrentFont^.Width*2;

If RCount>(R.B.Y-R.A.Y) Div CurrentFont^.Height

Then

Begin

Sb:=D^.StAndardScrollBar(sbVertical+sbHAndleKeyBoard);


Страница: