Демонстраційна програма розв’язку систем лінійних рівнянь

Характеристика розв’язку системи рівнянь. Аналіз специфікації процедур та функцій. Особливість створення заставок. Лістинг проектного файлу програм та головної форми. Новий підхід для розв’язування концепції лінійних задач з невідомими за методом Гауса.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 07.04.2015
Размер файла 116,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Міністерство аграрної політики України

Агротехнічний коледж Уманського ДАУ

Кабінет ”Проектування автоматизованих інформаційних систем”

Заочне відділення

Курсова робота

з навчальної дисципліни: “Основи програмування і алгоритмічні мови”

Тема роботи: “Демонстраційна програма розв'язку систем лінійних рівнянь за допомогою метода Гауса”

Виконала

студентка групи П4Р

Ільїна Т.О.

Перевірив викладач:

Чорновол І.В.

2010

Зміст

Вступ

1. Теоретичні відомості

1.1 Розв'язок систем рівнянь

1.2 TmainMenu

1.3 TButton

2. Специфікація процедур та функцій

2.1 Створення заставки

2.2 Обрахунок

2.3 Вивід на принтер

3. Лістінг програми

3.1 Лістінг проектного файлу програми

3.2 Лістінг головної форми програми

4. Результат програми

Висновки

Список використаних джерел та програмних засобів

Вступ

Широке використання математичних методів розв'язування багатьох однотипних задач, є базовим підґрунтям для створення комп'ютерної інтерпретації математичної моделі. Швидке збільшення кількості програмістів, все менше і менше залишає місця для написання нових, ще не розроблених математичних моделей.

Актуальною є дана робота тим, що в ній можна використати нові конструктивно-програмні елементи знаходження розв'язків системи n лінійних рівнянь з n невідомими.

Мета роботи полягає в розробці програми, яка б здійснювала комп'ютерну інтерпретацію розв'язку системи лінійних рівнянь методом Гауса.

Завданням є:

- розробити загальну структурно-алгоритмічну одиницю, для знаходження розв'язку системи лінійних рівнянь з 3 невідомими;

- зробити аналіз розробленої комп'ютерної моделі з детальним роз'ясненням кожного кроку виконання програми;

- розробити програмну оболонку, яка б виконувала наступні дії: введення даних для обрахунку, встановлення параметрів системи (для обрахунку системи з трьома лінійними рівнями), збереження результату на носії інформації та їх відкриття.

Використовувати дану програму можна при перевірці обрахунків розв'язку системи з трьома лінійними рівнями. А також для демонстрації розв'язку системи лінійних рівнянь методом Гауса.

1. Теоретичні відомості

1.1 Розв'язок систем рівнянь

Розв'язком системи рівнянь називається така пара чисел, які б задовольняли всі вказані умови (рівняння) даної системи. [9; 28] Так при розв'язкові системи лінійних рівнянь можна скористатися методом Гауса. Нехай дано систему із трьох лінійних рівнянь з сталими коефіцієнтами при невідомих х, y, z.

Поділимо всі члени першого рівняння на a1<>0, а потім, помножимо отримане рівняння на а2 і а3 відповідно, і віднімемо його із другого та третього рівнянь системи. Тоді із другого і третього рівнянь невідоме х буде виключено, і ми отримаємо систему у вигляді:

Тепер поділимо друге рівняння отриманої системи на , помножимо отримане рівняння на і віднімемо від третього. Тоді із третього рівняння невідоме y буде виключене і ми отримаємо систему трикутного вигляду:

З останнього рівняння системи знаходимо z, підставивши знайдене значення в друге рівняння, визначимо y, з першого рівняння знайдемо х, підставивши в нього значення y та z.

1.2 TmainMenu

Компонент класу TmainMenu визначає головне меню форми. На форму можна помістити будь-яку кількість об'єктів даного класу, але відображатися в полосі меню в верхній частині форми буде тільки той з них, який вказаний в властивості Menu форми.

Після встановлення компонента на форму необхідно створити його опції. Для цього потрібно двічі клацнути по компоненту лівою клавішею миші, або викликати на ньому контекстне меню і вибрати в ньому команду Menu Designer, і на кінець можна клацнути на кнопці в правій половині рядка Items Інспектора об'єктів.

Створення опцій не викликає проблем. В Інспекторі об'єктів потрібно перейти в рядок Caption, ввести текст опції, після чого натиснути Enter - опція створена, і можна переходити до наступної. Для створення підопцій головного меню потрібно клацнути мишею нижче опції головного меню.

Кожна підопція головного меню може розкривати список власних підопцій. Для створення таких підопцій потрібно вибрати підопцію головного меню і на ній або викликати контекстне меню і в ньому вибрати команду Create Submenu, або натиснути комбінацію клавіш Ctrl і клавішу курсор в право.

В назвах опції можна вказати символ & перед тим символом, який визначить клавішу бистрого доступу. Тобто комбінацію клавіші Alt і клавішу з літерою перед якою в назві опції стоїть знак &.

Також в меню можна вставляти розділяючу лінію, що розділяє меню по групам, для цього в назві опції потрібно ввести лише знак мінус.

1.3 TButton

Кнопки TButton широко використовуються для керування програмами. Пов'язаний із кнопкою алгоритм керування реалізується в оброблювачі події OnClick.

Властивості компонента:

property Cancel: Boolean; Якщо має значення True, подія OnClick кнопки виникає при натисканні клавіші Esc.

property Default: Boolean; Якщо має значення True, подія OnClick кнопки виникає при натисканні клавіші Enter.

tуре TModalResult = Low(Integer). .High(Integer);

property ModalResult: TModalResult; Визначає результат, із яким було закрито модальне вікно.

У термінології Windows модальними вікнами називаються такі спеціальні вікна, що, раз з'явившись на екрані, блокують роботу користувача з іншими вікнами аж до свого закриття. Звичайно з їхньою допомогою реалізується діалог, що вимагає від користувача прийняття деякого рішення. Для цього до складу модального вікна включається декілька кнопок. Якщо в кнопки визначена властивість ModalResult, натискання на неї призводить до закриття модального вікна і повертає в програму значення ModalResult як результат діалогу з користувачем. У Delphi визначені такі стандартні значення ModalResult:

mrNone Модальне вікно не закривається.

mrIgnore Була натиснута кнопка Ignore.

mrOk Була натиснута кнопка ОК.

mrYes Була натиснута кнопка Yes

mrCancel Була натиснута кнопка Cancel

mrNo Була натиснута кнопка No

mrAbort Була натиснута кнопка Abort

mrAll Була натиснута кнопка All

mrRetry Була натиснута кнопка Retry

На відміну від більшості інших видимих компонентів кнопка TButton є компонентом самої Windows і тому не може змінювати свій колір вільно - вона його змінює разом із зміною палітри Windows. Кнопка завжди має системний колір clBtnFace і не має властивості Color. Шрифт напису на кнопці може змінювати свій стиль і розмір, але компонент ігнорує зміну його кольору.

2. Специфікація процедур та функцій

2.1 Створення заставки

Для створення заставки була використана форма Form2. Добавили її в проект за допомогою головного меню File\New\Form. Далі за допомогою команди меню Project\Options видалили з списку автоматично створюваних форм. Властивості BorderStyle форми-заставки присвоїли значення bsNone, а властивості BorderIcon - значення []. Для відображення рисунка на формі, було поміщено компонент класу TImage.

Тепер коли була створена форма-заставка, потрібно тільки зробити щоб вона виводилась на екран. Для цього потрібно змінити файл проекту відповідним чином.

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2.pas' {Form2};

{$R *.RES}

begin

Application.Initialize;

{Створення форми заставки}

Form2:=TForm2.Create(Application);

Form2.Show; //Вивід заставки

Form2.Update; //Забезпечення її появи на екрані

{Наступний цикл просто створює видимість деякої

довготривалої роботи по ініціалізації додатку}

while Form2.timer1.Enabled do Application.processMessages;

Application.CreateForm(TForm1, Form1);

Form2.hide; //Знищення заставки

Form2.Free; //Звільнення пам'яті

Application.Run;

end.

Затримка заставки створена за допомогою наступного алгоритму:

while Form2.timer1.Enabled do Application.processMessages;

Це просто імітація деякого довготривалого процесу, щоб заставка не зникла з екрану, відразу як появилася. На форму Form2, додатково був поміщений компонент Timer1 і його властивості Interval встановлено значення 4000. Через 4 секунди виникає подія onTimer, в обробнику якої міститься єдиний рядок:

Timer1.Enabled:=False;

2.2 Обрахунок

Дані рівняння вводяться в компоненти класу TEdit. Для того щоб здійснити обрахунок потрібно дані із типу String перенести в тип Real. Для цього використовується функція StrToFloat. Але так, як дані внесені в компоненти TEdit, можуть бути помилковими, то при перенесені може виникнути помилка. Уникнути даної помилки можна використавши захищені блоки try……except…..end;

Коли зроблені обрахунки, навпаки потрібно було перенести дані із формату Real в String. Для того щоб це виконати була використана функція FloatToStrF модуля System.

2.3 Вивід на принтер

Для того щоб віддрукувати дані які знаходяться в компоненті Memo1, потрібно до програми підключити модуль Strings. Далі сам вивід здійснюється за допомогою такого алгоритму:

//Якщо кількість рядків тексту в Memo1 рівна 0 то виходимо

//з підпрограми

if Memo1.Lines.Count=0 then Exit;

//Змінюємо курсор миші на crHourGlass

Screen.Cursor:=crHourGlass;

with Printer do

Begin

BeginDoc;

with Printer.Canvas do

Begin

//Змінюємо шрифт принтера на шрифт компонента Memo1

Font:=Memo1.Font;

//Визначаємо висоту літер і поміщуємо її в dy

dy:=TextHeight('1');

Y:=2*dy;

for k:=0 to memo1.Lines.Count-1 do

Begin

//Друкуємо поточний рядок.

TextOut(0,y,Memo1.Lines[k]);

inc(y,dy);

if PageHeight-y<2*dy then

Begin

NewPage;

//Виводимо номер сторінки

TextOut(0,0,'c.'+IntToStr(PageNumber));

Y:=2*dy

end;

end;

end;

EndDoc;

end;

//Повертаємо курсор в попереднє значення

Screen.Cursor:=crDefault;

end;

3. Лістінг програми

3.1 Лістінг проектного файлу програми

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2.pas' {Form2};

{$R *.RES}

begin

Application.Initialize;

Form2:=TForm2.Create(Application);

Form2.Show;

Form2.Update;

while Form2.timer1.Enabled do Application.processMessages;

Application.CreateForm(TForm1, Form1);

Form2.hide;

Form2.Free;

Application.Run;

end.

3.2 Лістінг головної форми програми

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls, Buttons, ExtCtrls, ToolWin, ComCtrls, Menus, ImgList,Printers;

type

TForm1 = class(TForm)

Panel1: TPanel;

Label1: TLabel;

BitBtn1: TBitBtn;

Panel2: TPanel;

Edit1: TEdit;

Label2: TLabel;

Edit2: TEdit;

Label3: TLabel;

Edit3: TEdit;

Label4: TLabel;

Edit4: TEdit;

Edit5: TEdit;

Label5: TLabel;

Edit6: TEdit;

Label6: TLabel;

Edit7: TEdit;

Label7: TLabel;

Edit8: TEdit;

Edit9: TEdit;

Label8: TLabel;

Edit10: TEdit;

Label9: TLabel;

Edit11: TEdit;

Label10: TLabel;

Edit12: TEdit;

Memo1: TMemo;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

ToolBar1: TToolBar;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

ImageList1: TImageList;

ToolButton1: TToolButton;

ToolButton2: TToolButton;

ToolButton3: TToolButton;

ToolButton4: TToolButton;

ToolButton5: TToolButton;

OpenDialog1: TOpenDialog;

SaveDialog1: TSaveDialog;

FontDialog1: TFontDialog;

ToolButton6: TToolButton;

ToolButton7: TToolButton;

N9: TMenuItem;

N10: TMenuItem;

Panel3: TPanel;

Label15: TLabel;

Label16: TLabel;

Label17: TLabel;

Label18: TLabel;

Label19: TLabel;

Label20: TLabel;

BitBtn2: TBitBtn;

procedure BitBtn1Click(Sender: TObject);

procedure ToolButton1Click(Sender: TObject);

procedure ToolButton2Click(Sender: TObject);

procedure ToolButton4Click(Sender: TObject);

procedure ToolButton5Click(Sender: TObject);

procedure ToolButton7Click(Sender: TObject);

procedure N5Click(Sender: TObject);

procedure N11Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit2;

{$R *.DFM}

procedure TForm1.BitBtn1Click(Sender: TObject);

var

a1,b1,c1,d1:real;

a2,b2,c2,d2:real;

a3,b3,c3,d3:real;

X,Y,Z:real;

begin

try

a1:=strTofloat(Edit1.Text);

b1:=strTofloat(Edit2.Text);

c1:=strTofloat(Edit3.Text);

d1:=strTofloat(Edit4.Text);

a2:=strTofloat(Edit5.Text);

b2:=strTofloat(Edit6.Text);

c2:=strTofloat(Edit7.Text);

d2:=strTofloat(Edit8.Text);

a3:=strTofloat(Edit9.Text);

b3:=strTofloat(Edit10.Text);

c3:=strTofloat(Edit11.Text);

d3:=strTofloat(Edit12.Text);

Memo1.Lines.Add('Поділимо всі члени рівняння 1');

Memo1.Lines.Add('на a1, яке повинно <>0.');

Memo1.Lines.Add('Отримаємо наступну систему рівнянь:');

Memo1.Lines.Add('');

Memo1.Lines.Add('X+'+floatToStrF(b1/a1,ffFixed,4,2)+'Y+'+floatToStrF(c1/a1,ffFixed,4,2)+'Z='+floatToStrF(d1/a1,ffFixed,4,2));

Memo1.Lines.Add(Edit5.Text+'X+'+Edit6.Text+'Y+'+Edit7.Text+'Z='+Edit8.Text); лінійний рівняння лістинг заставка

Memo1.Lines.Add(Edit9.Text+'X+'+Edit10.Text+'Y+'+Edit11.Text+'Z='+Edit12.Text);

Memo1.Lines.Add('');

Memo1.Lines.Add('Віднімемо із рівняння №2 рівняння №1');

Memo1.Lines.Add('помножене на '+Edit5.Text);

Memo1.Lines.Add('Потім віднімемо із рівняння №3 рівняння №1');

Memo1.Lines.Add('помножене на '+Edit9.Text);

Memo1.Lines.Add('Ми повинні отримати наступну систему рівнянь');

Memo1.Lines.Add('');

Memo1.Lines.Add('X+'+floatToStrF(b1/a1,ffFixed,4,2)+'Y+'+floatToStrF(c1/a1,ffFixed,4,2)+'Z='+floatToStrF(d1/a1,ffFixed,4,2));

Memo1.Lines.Add(floatToStrF(b2-(b1/a1*a2),ffFixed,4,2)+'Y+'+floatToStrF(c2-(c1/a1*a2),ffFixed,4,2)+'Z='+floatToStrF(d2-(d1/a1*a2),ffFixed,4,2));

Memo1.Lines.Add(floatToStrF(b3-(b1/a1*a3),ffFixed,4,2)+'Y+'+floatToStrF(c3-(c1/a1*a3),ffFixed,4,2)+'Z='+floatToStrF(d3-(d1/a1*a3),ffFixed,4,2));

Memo1.Lines.Add('');

Memo1.Lines.Add('Поділемо друге рівняння на '+Edit6.Text);

Memo1.Lines.Add('Ми отримаємо наступну систему рівнянь');

Memo1.Lines.Add('');

Memo1.Lines.Add('X+'+floatToStrF(b1/a1,ffFixed,4,2)+'Y+'+floatToStrF(c1/a1,ffFixed,4,2)+'Z='+floatToStrF(d1/a1,ffFixed,4,2));

Memo1.Lines.Add('Y+'+floatToStrF((c2-(c1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2)+'Z='+floatToStrF((d2-(d1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2));

Memo1.Lines.Add(floatToStrF(b3-(b1/a1*a3),ffFixed,4,2)+'Y+'+floatToStrF(c3-(c1/a1*a3),ffFixed,4,2)+'Z='+floatToStrF(d3-(d1/a1*a3),ffFixed,4,2));

Memo1.Lines.Add('');

Memo1.Lines.Add('Віднімемо від третього рівняння');

Memo1.Lines.Add('рівняння - 2 помножене на ' +floatToStrF(b3-(b1/a1*a3),ffFixed,4,2)+':');

Memo1.Lines.Add('');

Memo1.Lines.Add('X+'+floatToStrF(b1/a1,ffFixed,4,2)+'Y+'+floatToStrF(c1/a1,ffFixed,4,2)+'Z='+floatToStrF(d1/a1,ffFixed,4,2));

Memo1.Lines.Add('Y+'+floatToStrF((c2-(c1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2)+'Z='+floatToStrF((d2-(d1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2));

Memo1.Lines.Add(floatToStrF((c3-(c1/a1*a3))-((c2-(c1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)),ffFixed,4,2)+'Z='+floatToStrF((d3-(d1/a1*a3))-((d2-(d1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)),ffFixed,4,2));

Memo1.Lines.Add('');

Memo1.Lines.Add('Знаходим Z');

Memo1.Lines.Add('Z='+floatToStrF((d3-(d1/a1*a3))-((d2-(d1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)),ffFixed,4,2)+'/'+floatToStrF((c3-(c1/a1*a3))-((c2-(c1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)),ffFixed,4,2));

Z:=((d3-(d1/a1*a3))-((d2-(d1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)))/((c3-(c1/a1*a3))-((c2-(c1/a1*a2))/(b2-(b1/a1*a2)))*(b3-(b1/a1*a3)));

Memo1.Lines.Add('Отже Z='+floatToStrF(Z,ffFixed,4,2));

Memo1.Lines.Add('');

Memo1.Lines.Add('Далі знаходимо Y підставивши');

Memo1.Lines.Add('Z в рівняння -2');

Memo1.Lines.Add('Y='+floatToStrF((d2-(d1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2)+'-'+floatToStrF((c2-(c1/a1*a2))/(b2-(b1/a1*a2)),ffFixed,4,2)+'*'+floatToStrF(Z,ffFixed,4,2));

Y:=((d2-(d1/a1*a2))/(b2-(b1/a1*a2)))-((c2-(c1/a1*a2))/(b2-(b1/a1*a2))*z);

Memo1.Lines.Add('Y='+floatToStrF(Y,ffFixed,4,2));

Memo1.Lines.Add('');

Memo1.Lines.Add('Підставивши знайдені дані в');

Memo1.Lines.Add('перше рівняння знайдемо Х:');

Memo1.Lines.Add('X+'+floatToStrF(b1/a1,ffFixed,4,2)+'*'+floatToStrF(Y,ffFixed,4,2)+'+'+floatToStrF(c1/a1,ffFixed,4,2)+'*'+floatToStrF(Z,ffFixed,4,2)+'='+floatToStrF(d1/a1,ffFixed,4,2));

X:=d1/a1-c1/a1*Z-b1/a1*Y;

Memo1.Lines.Add('X='+floatToStrF(X,ffFixed,4,2));

Memo1.Lines.Add('Відповідь:X='+floatToStrF(X,ffFixed,4,2)+' '+'Y='+floatToStrF(Y,ffFixed,4,2)+' '+'Z='+floatToStrF(Z,ffFixed,4,2));

Label16.Caption:=floatToStrF(X,ffFixed,4,2);

Label18.Caption:=floatToStrF(Y,ffFixed,4,2);

Label20.Caption:=floatToStrF(Z,ffFixed,4,2);

except

ShowMessage('Невірно введені дані');

end;

end;

procedure TForm1.ToolButton1Click(Sender: TObject);

begin

If OpenDialog1.Execute Then

Begin

Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

end;

end;

procedure TForm1.ToolButton2Click(Sender: TObject);

begin

If SaveDialog1.Execute Then

Begin

Memo1.Lines.SaveToFile(SaveDialog1.FileName);

end;

end;

procedure TForm1.ToolButton4Click(Sender: TObject);

begin

Memo1.Clear;

end;

procedure TForm1.ToolButton5Click(Sender: TObject);

begin

If FontDialog1.Execute Then

Begin

Memo1.Font:=FontDialog1.Font;

end;

end;

procedure TForm1.ToolButton7Click(Sender: TObject);

var

y,dy,k:integer;

begin

if Memo1.Lines.Count=0 then Exit;

Screen.Cursor:=crHourGlass;

with Printer do

Begin

BeginDoc;

with Printer.Canvas do

Begin

Font:=Memo1.Font;

dy:=TextHeight('1');

Y:=2*dy;

for k:=0 to memo1.Lines.Count-1 do

Begin

TextOut(0,y,Memo1.Lines[k]);

inc(y,dy);

if PageHeight-y<2*dy then

Begin

NewPage;

TextOut(0,0,'c.'+IntToStr(PageNumber));

Y:=2*dy

end;

end;

end;

EndDoc;

end;

Screen.Cursor:=crDefault;

end;

procedure TForm1.N5Click(Sender: TObject);

begin

Form1.Close;

end;

procedure TForm1.N11Click(Sender: TObject);

begin

Form2.ShowModal;

end;

procedure TForm1.BitBtn2Click(Sender: TObject);

begin

Close;

end;

end.

3.3 Лістінг модуля UNIT2

unit Unit2;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ExtCtrls;

type

TForm2 = class(TForm)

Panel1: TPanel;

Image1: TImage;

Timer1: TTimer;

procedure Timer1Timer(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.Timer1Timer(Sender: TObject);

begin

Timer1.Enabled:=False;

end;

end.

4. Результат програми

Після запуску програма має вигляд зображений на малюнку Рис 4.1.

Рис 4.1

Якщо ввести дані і натиснути кнопку „Обрахувати”, то зовнішній вигляд програми зміниться - Рис 4.2.

Висновки

Програмні продукти, такого напрямку, широко використовуються в математиці не тільки при розв'язку систем лінійних рівнянь, але і при розв'язку систем квадратних рівнянь, диференціальних рівнянь і т.д. Тобто значущість даної програми дуже велика.

В програмі було розроблено і використано новий підхід для розв'язування системи n лінійних рівнянь з n невідомими методом Гауса. Здійснено аналіз всіх нових конструктивно-логічних блоків з деталізацією кожного кроку. Розроблена програмна оболонка, яка спрощує роботу з програмою. Збереження і відтворення інформації дає можливість гнучкого використання даної програми.

Список використаних джерел та програмних засобів

1. Архангельский А.Я. Программирование в Delphi 4. - М.: ЗАО «Издательство БИНОМ», 1999. - 768 с.

2. Бобровский С. Delphi 5: Учебный курс. - СПб: Издательство «Питер», 2000. - 640 с.

3. Епанешников А., Епанешников В. Программирование в среде Delphi: Учебное пособие: в 4-х ч. Ч. 1. Проектирование программ. - М.: ДИАЛОГ-МИФИ, 1998. - 336 с.

4. Калверт Ч. Delphi 4. Энциклопедия пользователя: Пер. с англ. - К.:ЭНТРОП, М.:ДЕСС, 1999. - 752 с.

5. Канту М., Гуч Т. Delphi. Руководство разработчика: Пер. с англ. - К.: ВЕК+, М.:ЭНТРОП, М.:ДЕСС, 1999. - 752 с.

6. Курносов А.П. Вычислительная техника и программирование: Учебник. - М.: Финансы и статистика, 1991. - 344 с.

7. Кэнту М. Delphi 4 для профессионалов. - СПб.: Издательство «Питер», 1999. - 1120 с., ил.

8. Орлик С.В. Секреты Delphi на примерах. - М.: БИНОМ, 1996. - 316 с.

9. Тейксейра, Стив, Пачеко, Ксавье. Delphi 5. Руководство разработчика, том 2. Основные методы и технологии программирования: Пер. с англ.: Уч. пос. - М.: Издательский дом «Вильямс», 2000. - 832 с., ил.

10. Фаронов В.В. Delphi 5. Руководство программиста. - М.: «Нолидж», 2001. - 880 с.

11. Фаронов В.В. Delphi 6. Учебный курс. - М.: Издатель Молгачева С.В., 2003. - 672 с., ил.

12. Фаронов В.В. Турбо Паскаль 7.0. Практика программирования. Учебное пособие. - М.: «Нолидж», 1997. - 432 с., ил.

13. Шкіль М.І. Вища математика. Підручник: У 3 кн.: Кн. 2. Диференціальне та інтегральне числення функції однієї змінної. Ряди. - К.: Либідь, 1994.

Размещено на Allbest.ru

...

Подобные документы

  • Програма чисельного розв'язку систем лінійних алгебраїчних рівнянь (СЛАР) з розрідженою матрицею, економне витрачання оперативної пам'яті дозволяє розв’язувати багато систем високих ступенів за допомогою персональних комп'ютерів. Методи розв’язку СЛАР.

    дипломная работа [1,1 M], добавлен 01.08.2009

  • Головні особливості середовища Turbo Pascal. Властивості та вигляд системи лінійних алгебраїчних рівнянь. Опис схеми єдиного ділення (метод Гауса). Структура вхідної та вихідної інформації, текст програми, блок-схеми всіх процедур і головної програми.

    курсовая работа [276,1 K], добавлен 07.02.2011

  • Розробка програмного забезпечення для розв'язку системи лінійних рівнянь за формулами Крамера, головні особливості мови Turbo Pascal. Методи розв'язування задачі, архітектура програми та її опис. Контрольний приклад та результат машинного експерименту.

    курсовая работа [47,7 K], добавлен 23.04.2010

  • Розробка програмного забезпечення для розв'язку системи лінійних рівнянь за формулами Гаусса, головні особливості мови Turbo Pascal. Методи розв'язування задачі, архітектура програми та її опис. Контрольний приклад та результат машинного експерименту.

    курсовая работа [40,3 K], добавлен 23.04.2010

  • В роботі розглянуто наближені методи розв’язку нелінійних рівнянь. Для вказаних методів складено блок-схеми та написано програму, за якою розв’язується задане рівняння. Аналіз як самого рівняння і методів його розв’язання так і результатів обрахунку.

    курсовая работа [302,8 K], добавлен 03.12.2009

  • Розробка програмних модулів базових операцій обробки на підставі розрядно-логарифмічного кодування. Дослідження алгоритму розв'язку системи лінійних алгебраїчних рівнянь. Реалізація алгоритму Гауса. Покращення точності розрахунків за допомогою рл-чисел.

    курсовая работа [427,2 K], добавлен 20.11.2013

  • Види рівнянь та методи їх розв’язань. Чисельні методи уточнення коренів, постановка задачі. Рішення нелінійного рівняння методом простих та дотичних ітерацій. Використання програмних засобів. Алгоритми розв’язку задач. Програми мовою С++, їх тестування.

    курсовая работа [232,2 K], добавлен 12.02.2013

  • Розв’язання системи лінійних та нелінійних рівнянь у програмі MathCAD. Матричний метод розв'язання системи рівнянь. Користування панеллю інструментів Математика (Math) для реалізації розрахунків в системі MathCAD. Обчислення ітераційним методом.

    контрольная работа [1023,4 K], добавлен 08.04.2011

  • Розв’язання системи рівняння методом Гауса за схемою з частковим вибором головного елементу. Рішення задачі Коші методом Рунге-Кутта. Знаходження моментів кубічних сплайнів методом прогонки. Розв’язування системи нелінійних рівнянь методом Ньютона.

    контрольная работа [252,3 K], добавлен 04.06.2010

  • Виконання "ручного" розв'язування рівняння методом Ньоютона. Розробка програми на мові С#, яка реалізує введення вихідних даних, розв'язання заданого рівняння, виведення результатів у зручній формі на екран. Визначення початкового наближення кореня.

    лабораторная работа [120,9 K], добавлен 19.01.2022

  • В роботі розглянуто наближені методи розв'язку нелінійних рівнянь для методів Ньютона та хорд, складено блок-схеми та написано програму, за допомогою якої розв'язується задане рівняння. Аналіз рівняння, методів його розв'язання і результатів обрахунку.

    курсовая работа [380,9 K], добавлен 30.11.2009

  • Стандартний спосіб розв’язання задачі Коші для звичайного диференціального рівняння першого порядку чисельними однокроковими методами. Геометричний зміст методу Ейлера. Побудова графіку інтегральної кривої. Особливість оцінки похибки за методом Рунге.

    курсовая работа [112,9 K], добавлен 30.11.2009

  • Задача лінійного програмування. Розв’язання задачі геометричним методом. Приведення системи рівнянь до канонічного вигляду. Розв’язання симплекс-методом. Розв’язок двоїстої задачі. Задача цілочислового програмування і дробово-лінійного програм.

    контрольная работа [385,2 K], добавлен 04.06.2009

  • Характеристика мови Turbo Pascal. Опис деяких графічних процедур і функцій модуля Graph. Робота в графічному режимі. Процедури, опції модуля CRT. Створення програми розв'язку системи нерівностей з двома змінними в графічному режимі Турбо Паскаля.

    курсовая работа [35,0 K], добавлен 24.02.2011

  • Вибір емпіричної формули. Метод оберненої матриці. Розв’язування систем лінійних рівнянь на ПК. Вибір двох апроксимуючих функцій. Розрахунки у середовищі MS Excel для лінійної функції, для квадратичної функції та у середовищі MS Visual Studio (мовою С#).

    курсовая работа [658,8 K], добавлен 18.08.2014

  • Розвиток виробництва і широке використання промислових роботів. Алгоритми методів, блок-схеми алгоритмів розв'язку даного диференційного рівняння. Аналіз результатів моделювання, прямий метод Ейлера, розв’язок диференціального рівняння в Mathcad.

    контрольная работа [59,1 K], добавлен 30.11.2009

  • Що таке диференціал. Особливості розробки програм для розрахунку диференціала автомобіля, для розв’язання систем лінійних рівнянь. Отладка програми для обрахунку та графічного відображення зовнішньої швидкісної характеристики легкового автомобіля.

    курсовая работа [502,8 K], добавлен 15.06.2010

  • Розв’язання нелінійних алгебраїчних рівнянь методом дихотомії. Вирішення задачі знаходження коренів рівняння. Розробка алгоритму розв’язання задачі і тестового прикладу. Блок-схеми алгоритмів основних функцій. Інструкція користувача програмою мовою С++.

    курсовая работа [2,0 M], добавлен 24.09.2010

  • Основні означення системи лінійних рівнянь. Елементарні перетворення системи лінійних рівнянь. Алгоритм метода Жордана-Гаусса. Метод повного виключення невідомих. Приклад використовування методу Жордана-Гаусса. Складання програму мовою Borland C++ 4.5.

    курсовая работа [139,6 K], добавлен 20.12.2013

  • Принципи технології створення програмних продуктів. Набір файлів, необхідних для створення програми в Delphi, варіанти роботи з ними. Програмування графічного інтерфейсу користувача. Зовнішній вигляд і лістинг програми, використані команди і компоненти.

    курсовая работа [550,5 K], добавлен 03.01.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.