Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
делфи.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
8.51 Mб
Скачать
  1. При запуске программы появляется следующее окно:

  1. После и нажатия кнопки «Создать» появляется окно создания нового файла и выбора месторасположения и ввода имени создаваемого файла данных.

После ввода произвольного количества записей и нажатия кнопки «Ввести запись»:

После нажатия кнопки «Сортировать»:

После нажатия кнопки «Сохранить» появляется окно выбора места и имени сохраняемого текстового файла с результатами:

Выводы: : изучили правила работы с компонентами TopenDialog и TSaveDialog. Написали программу с использованием файлов и данных типов запись.

Лабораторная работа 7

Разработка приложения с использованием подпрограмм и модулей Постановка задачи:

Разработать приложение, состоящее из нескольких Unit в соответствии с индивидуальным заданием.

В программе предусмотреть возможность выбора функции, для которой будет рассчитываться таблица. Функции поместитm в отдельный модуль.

Задание: Необходимо вывести на экран таблицу значений функции Y(x) и ее разложения в ряд S(x) для х изменяющихся от до с шагом . Близость значений S(x) и Y(x) во всем диапазоне значений x указывает на правильность вычисления S(х) и Y(x).

S(x)

Y(x)

6

0.1

1

8

unit Unit1;

Interface

uses

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

Dialogs, Math, StdCtrls, mathfunc;

type

TForm1 = class(TForm)

Memo1: TMemo;

Button1: TButton;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

lbl1: TLabel;

lbl2: TLabel;

lbl3: TLabel;

lbl4: TLabel;

procedure FormCreate(Sender: TObject);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

Implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);

begin

Edit1.Text:='0,1';

Edit2.Text:='1';

Edit3.Text:='8';

Edit4.Text:=FloatToStr((1-0.1)/8);

Memo1.Clear;

Memo1.Lines.Add('Лабораторная работа №7 (на базе варианта 6');

end;

procedure TForm1.Button1Click(Sender: TObject);

var

x,x1,x2,x2n,h,S,Y,deltas : extended;

n,nf,i : Integer;

Begin

x1:=StrToFloat(edit1.Text);

x2:=StrToFloat(edit2.Text);

If x2<x1 Then

Begin

x:=x1;

x1:=x2;

x2:=x;

End;

n:=StrToInt(edit3.Text);

h:=(x2-x1)/n;

edit4.Text:=FloatToStr(h);

x:=x1;

Repeat

//Вычисление S

S:=x;

nf:=1;

x2n:=x;

For i:=1 To n Do

Begin

nf:=nf*2*i*(2*i+1); // (2*n+1)!

x2n:=x2n*x*x; // x^(2*n+1)

deltas:=x2n/nf;

S:=S+deltas;

End;

//Подключение модуля mathfunc

y:=yx(x);

Memo1.Lines.Add('S = ' + FloatToStrF(S, ffFixed,12,10)+ ' Y = '+

FloatToStrF(Y, ffFixed,12,10));

x:=x+h;

Until x>x2;

End;

end.

unit mathfunc;