Создание программы в Delphi

Автор работы: Пользователь скрыл имя, 04 Января 2012 в 18:36, курсовая работа

Краткое описание

Курсовая работа посвящена разработке программы на языке Object Pascal в интегрированной среде разработки (ИСР) Delphi. Задание предусматривает создание приложения с графическим интерфейсом с подпрограммами. Приложение содержит два модуля, в каждом подпрограммы для решения двух задач. Остальные модули используются для создания диалогов и оформления решения поставленных задач.

Содержание работы

Рецензия……….…………………..…..………………………………3
Введение………………..…………..…………………………………4
Выбор варианта.…....……………….……………………………...…5
Справка………………………………………………………………..6
Главная форма.……………….………...……………………………..8
Вычисление констант………………...……………………………...11
Комплексные числа………………………………………………….14
Тригонометрия……………………………………………………….17
Гиперболические функции…………………

Содержимое работы - 1 файл

Отчет по курсовой.doc

— 532.00 Кб (Скачать файл)

r:=0;

//присваение  Пи равному нулю

p:=0;

//цикл со сравнением

while abs(pi-p)>e do

 begin

   //вычисление  ПИ

   p:=p+4*(power(-1,r)/(2*r+1));

   //увеличение  шага

   r:=r+1;

 end;

//выводим данные  о числе ПИ

 label3.Caption:=floattostr(pi);

//выводим данные  о подсчете Р

 label5.Caption:=floattostr(p);

//выводим данные  о погрешности

 label7.Caption:=floattostr(pi-p);

//выводим данные  о количестве шагов

 label9.Caption:=floattostr(r);

end;

end; 

procedure TForm2.Button2Click(Sender: TObject);

begin

//выход

Close;

end; 

procedure TForm2.Button3Click(Sender: TObject);

begin

//сбрасываем  данные

label3.Caption:='';

label5.Caption:='';

label7.Caption:='';

label9.Caption:='';

edit1.Text:='';

end; 

procedure TForm2.Timer1Timer(Sender: TObject);

begin

//вывод текущей  даты

Statusbar1.panels[0].text:='Текущая  дата: '+DateToStr(now);

//вывод текущего  время

Statusbar1.panels[1].text:='Время: '+TimeToStr(now);

end;

end.

    Комплексные числа

    Комплексное число имеет вид Z(x) = Re(x)/ Im(x), где

     Re(x) - вещественная часть,

     Im(x) - мнимая часть,

      .

   Для арифметики в комплексных числах определим 4 операции (сложение, вычитание, умножение и деление). В каждой из них входными являются вещественные и мнимые части операндов, а выходными вещественная и мнимая части результата. Их надо оформить в виде процедур. Результат нужно вывести в виде пары чисел. Графиков делать не надо.

    Деление

    Операция z=x/y 

                      

 

Листинг модуля Unit3: 

unit Unit3; 

interface 

uses

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

  Dialogs, StdCtrls, jpeg, ExtCtrls, ComCtrls; 

type

  TForm3 = class(TForm)

    Edit1: TEdit;

    Edit2: TEdit;

    Label1: TLabel;

    Label2: TLabel;

    Label3: TLabel;

    Label4: TLabel;

    Edit3: TEdit;

    Edit4: TEdit;

    Label5: TLabel;

    Label6: TLabel;

    Label7: TLabel;

    Label8: TLabel;

    Edit5: TEdit;

    Edit6: TEdit;

    Label9: TLabel;

    Label10: TLabel;

    Label11: TLabel;

    Label12: TLabel;

    Button1: TButton;

    Button2: TButton;

    Label13: TLabel;

    Label14: TLabel;

    Label15: TLabel;

    Image1: TImage;

    Button3: TButton;

    StatusBar1: TStatusBar;

    Timer1: TTimer;

    procedure Button2Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

    procedure Timer1Timer(Sender: TObject); 

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form3: TForm3;

  a,b,c,d:real; 

implementation 

{$R *.dfm} 
 
 

procedure TForm3.Button1Click(Sender: TObject);

begin

//условия вывода  сообщения на экран

if (Edit1.Text='') or (Edit1.Text='0') or (Edit1.Text<'0')

or (Edit2.Text='') or (Edit2.Text='0') or (Edit2.Text<'0')

or (Edit3.Text='') or (Edit3.Text='0') or (Edit3.Text<'0')

or (Edit4.Text='') or (Edit4.Text='0') or (Edit4.Text<'0')

then

begin

//вывод сообщения  на экран

Showmessage ('Недопустимое либо пустое значение!');

Edit1.Text:='';

end;

begin

//считывание  исходных данных о делителе и делимом

a:=StrToFloat(Edit1.Text);

b:=StrToFloat(Edit2.Text);

c:=StrToFloat(Edit3.Text);

d:=StrToFloat(Edit4.Text); 

//расчет и  вывод действительной и мнимой  частей комплексного частного

Edit5.Text:=FloatToStr((a*c+b*d)/(sqr(c)+sqr(d)));

Edit6.Text:=FloatToStr((b*c-a*d)/(sqr(c)+sqr(d)));

end;

end; 

procedure TForm3.Button2Click(Sender: TObject);

begin

//выход

Close;

end; 

procedure TForm3.Button3Click(Sender: TObject);

begin

//сбрасываем  результаты вычисления

Edit5.Clear();

Edit6.Clear();

//сбрасываем  исходные данные

Edit1.Clear();

Edit2.Clear();

Edit3.Clear();

Edit4.Clear();

end; 

procedure TForm3.Timer1Timer(Sender: TObject);

begin

//вывод текущей  даты

Statusbar1.panels[0].text:='Текущая  дата: '+DateToStr(now);

//вывод текущего  времени

Statusbar1.panels[1].text:='Время: '+TimeToStr(now);

end;

end.

Тригонометрия

     В КР предусмотрена подготовка четырех  собственных тригонометрических функций (синус, косинус, обратный тангенс и обратный котангенс). Их следует оформить в виде функций. Результаты требуется вывести в виде графика, на котором для сравнения нужно привести график аналогичной функции, определенной в ИСР.

      • Косинус Cos(x)

           

 
 

Листинг модуля Unit4: 

unit Unit4; 

interface 

uses

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

  Dialogs, ComCtrls, Menus, StdCtrls, Math, TeEngine, Series, ExtCtrls,

  TeeProcs, Chart, jpeg; 
 

type

  TForm4 = class(TForm)

    Edit1: TEdit;

    Label2: TLabel;

    Button2: TButton;

    Label3: TLabel;

    Label5: TLabel;

    Image1: TImage;

    Button1: TButton;

    Chart1: TChart;

    Series2: TLineSeries;

    Series1: TLineSeries;

    StatusBar1: TStatusBar;

    Timer1: TTimer;

    procedure Button2Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Timer1Timer(Sender: TObject); 

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form4: TForm4; 

implementation 

{$R *.dfm} 
 
 

procedure TForm4.Button1Click(Sender: TObject);

var

a,b,c,s,p,f:extended;

k,r,j:integer;

begin

//условия вывода  сообщения на экран

if (Edit1.Text='') or (Edit1.Text='0') or (Edit1.Text<'0')

then

begin

//вывод сообщения  на экран

Showmessage ('Недопустимое  либо пустое значение!');

Edit1.Text:='';

end;

//присваение оси а

a:=-6;

//обновление  двух линий

Series1.Clear;

Series2.Clear;

//цикл сравнения

while a<6 do

begin

//строим первый график

Series1.AddXY(a,cos(a));

p:=1;

s:=1;

r:=1;

f:=1;

//цикл сравнения  со считыванием точности

while 1/f>StrToFloat(edit1.text) do

begin

f:=1;

//цикл вычисления  с выводом промежуточных результатов

for j:=1 to r*2 do f:=f*j;

//вычисление  тригонометрического косинуса

p:=p+power(-1,r)*power(a,r*2)/f ;

//увеличение  шага

r:=r+1;

end;

//строим второй  график

Series2.AddXY(a,p);

a:=a+0.05;

end;

end; 

procedure TForm4.Button2Click(Sender: TObject);

begin

//выход

Close;

end; 

procedure TForm4.Timer1Timer(Sender: TObject);

begin

//вывод текущей даты

Statusbar1.panels[0].text:='Текущая дата: '+DateToStr(now);

//вывод текущего времени

Statusbar1.panels[1].text:='Время: '+TimeToStr(now);

end;

end.

Гиперболические функции.

   В КР предусмотрена подготовка четырех  собственных гиперболических функций (синус, косинус, тангенс и котангенс). Их следует оформить в виде функций. Результаты требуется вывести в виде графика, на котором для сравнения нужно привести график аналогичной функции, определенной в ИСР.

      • Косинус Ch(x)

           

        
 

Листинг модуля Unit5: 

unit Unit5; 

interface 

uses

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

  Dialogs, ComCtrls, Menus, StdCtrls, Math, TeEngine, Series, ExtCtrls,

  TeeProcs, Chart, jpeg;

type

  TForm5 = class(TForm)

    Edit1: TEdit;

    Label2: TLabel;

    Button1: TButton;

    Button2: TButton;

    Label3: TLabel;

    Label5: TLabel;

    Image1: TImage;

    Chart1: TChart;

    Series2: TLineSeries;

    Series1: TLineSeries;

    StatusBar1: TStatusBar;

Информация о работе Создание программы в Delphi