01.11.2010, 19:19
|
#1
|
Пользователь
Регистрация: 17.05.2010
Сообщений: 26
|
Unit + Class(TObject)
Нуждаюсь в Вашей помощи, нужно написать программу с использованием модуля и отдельных классов для каждой фигуры...Объявить Class, я смог, но как дальше...не знаю..будьте добры, помогите...
Цитата:
unit lab3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Sq, Dialogs, StdCtrls, Buttons;
type
TOkr=class(TObject)
S:real;
x:integer;
function SOkr(x1:integer):real;
constructor create(x1:integer);
end;
TPryam=class(TObject)
S:real;
x,y:integer;
function SPryam(x1,y1:integer):real;
constructor create(x1,y1:integer);
end;
TTreug=class(TObject)
S:real;
x,y:integer;
function STreug(x1,y1:integer):real;
constructor create(x1,y1:integer);
end;
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Edit1: TEdit;
Edit2: TEdit;
Button4: TButton;
Button5: TButton;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Okr1:TOkr;
Pryam1:TPryam;
Treug:TTreug;
i:integer;
implementation
{$R *.dfm}
constructor TOkr.create(x1:integer);
begin
inherited create;
x:=x1;
S:=SOkr(x1);
end;
constructor TPryam.create(x1,y1:integer);
begin
inherited create;
x:=x1;
y:=y1;
S:=SPryam(x1,y1);
end;
constructor TTreug.create(x1,y1:integer);
begin
x:=x1;
y:=y1;
S:=STreug(x1,y1);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
i:=1;
Edit1.Visible:=true;
Edit2.Visible:=false;
Label3.Caption:='Ââåäèòå r';
Label4.Caption:='';
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
i:=2;
Edit1.Visible:=true;
Edit2.Visible:=true;
Label3.Caption:='Ââåäèòå a';
Label4.Caption:='Ââåäèòå b';
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
i:=3;
Label3.Caption:='Ââåäèòå a';
Label4.caption:='Ââåäèòå h';
Edit2.Visible:=true;
Edit1.Visible:=true;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
Edit1.Clear;
Edit2.Clear;
label2.Caption:='';
end;
procedure TForm1.Button4Click(Sender: TObject);
var
a,a1,b,b1:real;
begin
a1:=StrToFloat(Edit1.text);
if i>1 then
b1:=StrToFloat(Edit2.Text);
a:=a1;
b:=b1;
if i=1 then
label2.Caption:=FloatToStr(Okr(a1))
else if i=2 then
label2.Caption:=FloatToStr(Pryam(a1 ,b1))
else if i=3 then
label2.Caption:=FloatToStr(Treug(a1 ,b1));
end;
end.
|
Модуль..
Цитата:
unit Sq;
interface
Function Okr(a:real):real;
function Pryam(a,b:real):real;
function Treug(a,b:real):real;
implementation
function Okr(a:real):real;
begin
Okr:=pi*sqr(a);
end;
function Pryam(a,b:real):real;
begin
Pryam:=a*b;
end;
function Treug(a,b:real):real;
begin
Treug:=a*b/2;
end;
end.
|
Нужно Завтра сдавать!!!
|
|
|