Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пример отчета.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
490.5 Кб
Скачать

Отчет по ПООС, Имамова Эльвина.

  1. Калькулятор.

Задание. Сделать интерфейс калькулятора.

Тело программы:

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.

  1. Решение матриц размерности 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.