
- •Калькулятор.
- •Решение матриц размерности 4*4
- •Interface
- •Implementation
- •Текстовый редактор.
- •Interface
- •Implementation
- •Графический редактор.
- •Interface
- •Implementation
- •Графический редактор - числовой метод.
- •Interface
- •Implementation
- •График cos X.
- •Interface
- •Implementation
- •Цветочек
- •Interface
- •Implementation
Отчет по ПООС, Имамова Эльвина.
Калькулятор.
Задание. Сделать интерфейс калькулятора.
Тело программы:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
a, b, c: real;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.text);
b:=StrToFloat(Edit2.text);
c:=a+b;
Edit3.text:=FloatToStr(c);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.text);
b:=StrToFloat(Edit2.text);
c:=a-b;
Edit3.text:=FloatToStr(c);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.text);
b:=StrToFloat(Edit2.text);
c:=a*b;
Edit3.text:=FloatToStr(c);
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.text);
b:=StrToFloat(Edit2.text);
c:=a/b;
Edit3.text:=FloatToStr(c);
end;
end.
Решение матриц размерности 4*4
Задание. Составить интерфейс для умножения, сложения, вычитания матриц.
Тело программы.
unit Glav;
Interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm_g = class(TForm)
TabA: TStringGrid;
TabB: TStringGrid;
TabC: TStringGrid;
Met_A: TLabel;
Met_B: TLabel;
Met_C: TLabel;
KN_OBR: TButton;
KN_OCHIS: TButton;
KN_VYX: TButton;
KN_PLUS: TButton;
KN_UMN: TButton;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure KN_PLUSClick(Sender: TObject);
procedure TabASetEditText(Sender: TObject; ACol, ARow: Integer;
const Value: String);
procedure TabBSetEditText(Sender: TObject; ACol, ARow: Integer;
const Value: String);
procedure KN_UMNClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure KN_OCHISClick(Sender: TObject);
procedure KN_VYXClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form_g: TForm_g;
Implementation
{$R *.dfm}
CONST N = 4;
TYPE
vektor_n = array [1 .. n] of longint ;
matrica_n = array [1 .. n] of vektor_n;
var
a,b,c : matrica_n;
menyali : boolean
;
procedure TForm_g.FormCreate(Sender: TObject);
var i,j,x : word ;
begin
for i:= 1 to N do
for j:= 1 to N do
begin
x:= random(7)+1;
a[i,j]:=x;
TabA.Cells[i,j]:= IntToStr(x);
x:= random(7)+1;
b[i,j]:=x;
TabB.Cells[i,j]:= IntToStr(x);
end;
menyali := false
end;
procedure uchet;
var i,j : word ;
begin
for i:= 1 to N do
for j:= 1 to N do
begin
a[i,j]:= StrToInt(Form_g.TabA.Cells[i,j]);
b[i,j]:= StrToInt(Form_g.TabB.Cells[i,j])
end
end
;
procedure TForm_g.KN_PLUSClick(Sender: TObject);
var i,j : word ;
begin
if menyali then
uchet
;
for i:= 1 to N do
for j:= 1 to N do
begin
c[i,j]:= a[i,j]+b[i,j];
TabC.Cells[i,j]:= IntToStr(c[i,j])
end
end;
procedure TForm_g.TabASetEditText(Sender: TObject; ACol, ARow: Integer;
const Value: String);
begin
menyali := true
end;
procedure TForm_g.TabBSetEditText(Sender: TObject; ACol, ARow: Integer;
const Value: String);
begin
menyali := true
end;
procedure TForm_g.KN_UMNClick(Sender: TObject);
var i, j: integer;
begin
if menyali then
uchet
;
for j:= 1 to N do
for i:= 1 to N do
begin
c[1,1]:= a[1,1]*b[1,1]+a[2,1]*b[1, 2]+a[3,1]*b[1,3]+a[4,1]*b[1,4];
c[2,1]:= a[1,1]*b[2,1]+a[2,1]*b[2, 2]+a[3,1]*b[2,3]+a[4,1]*b[2,4];
c[3,1]:= a[1,1]*b[3,1]+a[2,1]*b[3, 2]+a[3,1]*b[3,3]+a[4,1]*b[3,4];
c[4,1]:= a[1,1]*b[4,1]+a[2,1]*b[4, 2]+a[3,1]*b[4,3]+a[4,1]*b[4,4];
c[1,2]:= a[1,2]*b[1,1]+a[2,2]*b[1, 2]+a[3,2]*b[1,3]+a[4,2]*b[1,4];
c[2,2]:= a[1,2]*b[2,1]+a[2,2]*b[2, 2]+a[3,2]*b[2,3]+a[4,2]*b[2,4];
c[3,2]:= a[1,2]*b[3,1]+a[2,2]*b[3, 2]+a[3,2]*b[3,3]+a[4,2]*b[3,4];
c[4,2]:= a[1,2]*b[4,1]+a[2,2]*b[4, 2]+a[3,2]*b[4,3]+a[4,2]*b[4,4];
c[1,3]:= a[1,3]*b[1,1]+a[2,3]*b[1, 2]+a[3,3]*b[1,3]+a[4,3]*b[1,4];
c[2,3]:= a[1,3]*b[2,1]+a[2,3]*b[2, 2]+a[3,3]*b[2,3]+a[4,3]*b[2,4];
c[3,3]:= a[1,3]*b[3,1]+a[2,3]*b[3, 2]+a[3,3]*b[3,3]+a[4,3]*b[3,4];
c[4,3]:= a[1,3]*b[4,1]+a[2,3]*b[4, 2]+a[3,3]*b[4,3]+a[4,3]*b[4,4];
c[1,4]:= a[1,4]*b[1,1]+a[2,4]*b[1, 2]+a[3,4]*b[1,3]+a[4,4]*b[1,4];
c[2,4]:= a[1,4]*b[2,1]+a[2,4]*b[2, 2]+a[3,4]*b[2,3]+a[4,4]*b[2,4];
c[3,4]:= a[1,4]*b[3,1]+a[2,4]*b[3, 2]+a[3,4]*b[3,3]+a[4,4]*b[3,4];
c[4,4]:= a[1,4]*b[4,1]+a[2,4]*b[4, 2]+a[3,4]*b[4,3]+a[4,4]*b[4,4];
TabC.Cells[i,j]:= IntToStr(c[i,j])
end
end;
procedure TForm_g.Button1Click(Sender: TObject);
var i, j: integer;
begin
if menyali then
uchet
;
for i:= 1 to N do
for j:= 1 to N do
begin
c[i,j]:= a[i,j]-b[i,j];
TabC.Cells[i,j]:= IntToStr(c[i,j]);
end
end;
procedure TForm_g.KN_OCHISClick(Sender: TObject);
var i, j: integer;
begin
for i:= 1 to N do
for j:= 1 to N do
begin
TabA.Cells[i,j]:= ' ';
TabB.Cells[i,j]:= ' ';
TabC.Cells[i,j]:= ' ';
end;
end;
procedure TForm_g.KN_VYXClick(Sender: TObject);
begin
application.Terminate;
end;
end.