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




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

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

Программный продукт носит название «Project1», имеет расширение «.exe». Программное обеспечение, необходимое для работоспособности продукта, включает в себя:

• операционную систему Windows;

• приложение «Проводник».

Программный продукт написан на языке программирования Delphi в среде программирования Delphi10.2.

Программное обеспечение, необходимое для функционирования программы:

· 1 GB RAM (рекомендуется 2 GB+);

· До 52 GB свободного пространства на жестком диске для распаковки в зависимости от редакции и конфигурации;

· Обычный GPU с поддержкой DirectX 9.0 или лучше (PixelShaderLevel 2);

· Разрешение 1024x768 или более высокое;

· Intel® Pentium® или совместимый, минимум 1.6 GHz (рекомендуется 2GHz+);

· Мышь или другое указывающее устройство;

· NET Framework 3.5;

· клавиатура;

· мышь.

 

 

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

Программапроизводиттабулированиефункции

После табулирования программа найдет все корни функции, построит график по найденным данным и сгруппирует их в таблицу.

Данная программа имеет несколько возможностей:

После нажатия кнопки «Пуск» программа построит график функции, через определенный промежуток.

После нажатия копки пуск программа построит график функции по введённым значениям;

 

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

Алгоритм работы программы после введения необходимых данных для работы программы и нажатия кнопки «Пуск» представлен на рисунке 1.


 

 

 

 


 

В ходе работы использовались следующие методы программирования:

· линейный алгоритм;

· разветвляющийся алгоритм;

· циклический алгоритм.

 

Структура программы:

 

unit Unit1;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, VclTee.TeeGDIPlus,

VCLTee.TeEngine, Vcl.ExtCtrls, VCLTee.TeeProcs, VCLTee.Chart, Vcl.Grids,

VCLTee.Series;

type

TForm1 = class(TForm)

Button1: TButton;

Label1: TLabel;

Label2: TLabel;

Label3: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Chart1: TChart;

Series1: TLineSeries;

StringGrid1: TStringGrid;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

X0, // начальное значение аргумента функции f1

X1, //конечное значение аргумента функции f1

D, //шаг изменения аргумента функции f1

X:double; //вычисляемое значение функции f1

implementation

{$R *.dfm}

function f1(X:double): double;

begin

f1:=sin(X); //Функция

end;

//Процедураскнопкойзапуска

procedure TForm1.Button1Click(Sender: TObject);

var

t: double; //Аргументфункции f1

i: integer; //Счётчик

f:textfile; //Файловаяпеременная

begin

//Присваиваемфайлу f имя MyFile.txt

//иопределяемместоегорасположения

AssignFile(f, 'C:\Users\alyon\Desktop\Ещин\АДСДАТЬ\LR_2\MyFile.txt');

ReWrite(f); //открываем файл f для записи

X0:=strTofloat(Edit1.Text); //Ввод начального значения аргумента

X1:=strTofloat(Edit2.Text); //Ввод конечного значения аргумента

D:=strTofloat(Edit3.Text); //Ввод шага изменения значения аргумента

chart1.Series[0].Clear;//подготовка хранилища данных объекта Chart1

//Формирование шапки таблицы

stringGrid1.Cells[0,0]:=' t';

stringGrid1.Cells[1,0]:=' x';

stringGrid1.RowCount:=trunc((X1-X0)/D); //Определяемчислострок

t:=X0; i:=1;

while t<=X1 do

begin

application.ProcessMessages;

x:=f1(t); //Вычислениезначенийх, путёмобращенияк function f1

writeln(f,t:10:2,X:10:3); //Запись данных в тестовый файл MyFile.txt

//Заполнение таблицы (StringGrid) по строкам с текущими номерами i

stringGrid1.cells[0,i]:= FloattoStrF(t,ffFixed, 10, 4);

stringGrid1.cells[1,i]:= FloattoStrF(x,ffFixed, 10, 4);

//Построение графика x = f1(t)

Chart1.Series[0].AddXY(t,x);

t:= d+t; //Увеличение значения аргумента функции и счётчика строк таблицы

i:= i+1; // StringGrid1

end;

end;

end.


 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-11-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: