Cats

Пример страницы со сценарием

воскресенье, 27 декабря 2009 г.

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


.Цель: Разработать алгоритм и программу решения прикладной задачи – умножение мартиц.

Задача: Умножить матрицу А с размерностью m × n на матрицу В с размерностью n × l .
const
n=3;
m=3;
Type
Massiv= array [1..m,1..n] of integer;
var
M1,M2,M3:Massiv;
i,j,k:integer;
a,b:integer;
begin
randomize;
For i:=1 to m do
For j:=1 to n do begin
M1[i,j]:=Random(4);
M2[i,j]:=Random(4);
end;
for i:=1 to m do
for j:=1 to n do begin
M3[i,j]:=0;
for k:=1 to n do
M3[i,j]:=M3[i,j]+M1[i,k]*M2[k,j];
end;
Image1.canvas.Rectangle(0,0,Image1.Width,Image1.Height);

a:=Trunc(Image1.Width/10);
b:=Trunc(Image1.Height/10);
For i:=1 to m do
For j:=1 to n do begin
Image1.canvas.Rectangle(a*j,b*i,(a*j)+a,(b*i)+b);
Image1.Canvas.TextOut( a*j,b*i,IntToStr(M1[i,j]));
end;
For i:=1 to m do
For j:=1 to n do begin
Image1.canvas.Rectangle((a*j)+230,b*i,((a*j)+a)+230,(b*i)+b);
Image1.Canvas.TextOut((a*j)+230,b*i,IntToStr(M2[i,j]));
end;
For i:=1 to m do
For j:=1 to n do begin
Image1.canvas.Rectangle((a*j)+150,b*i+200,((a*j)+a)+150,((b*i)+b)+200);
Image1.Canvas.TextOut((a*j)+150,b*i+200,IntToStr(M3[i,j]));
end;
end;
 

пятница, 25 декабря 2009 г.

Лабораторная Работа №6






var
Form1: TForm1;

a, b, x, s, i, n, h, t,y,rX,rY:Real;

implementation

{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);


begin

Image1.Canvas.Rectangle(0,0,Image1.Width,Image1.Height);

a := -5;
b := 5;
n := 30;
h := (b - a) / n;
x:=a;
y:=sin(x);
rX:= Image1.Width / (b -a);
rY:= Image1.Height / (b -a);
Image1.Canvas.MoveTo(0, Trunc(Image1.Height/2 - (y)*rY));
Image1.Canvas.Brush.Style:=bsClear;
x:=x+h;
While x<=b+h do Begin y:= sin(x); Image1.Canvas.Pen.Color := clBlack; Image1.Canvas.LineTo(Trunc((x - a)*rX),Trunc(Image1.Height/2 - (y)*rY)); Image1.Canvas.Pen.Color := clRed; Image1.Canvas.Rectangle(Trunc((x - h - a)*rX), Trunc(Image1.Height/2), Trunc((x - a)*rX) , Trunc(Image1.Height/2 - (y)*rY)); x:=x+h; end; Image1.Canvas.Pen.Color := clBlack; Image1.Canvas.MoveTo(0,Trunc(Image1.Height/2)); Image1.Canvas.LineTo(Image1.Width,Trunc(Image1.Height/2)); Image1.Canvas.MoveTo(Trunc(Image1.Width/2),0); Image1.Canvas.LineTo(Trunc(Image1.Width/2),(Image1.Height));

end;





четверг, 24 декабря 2009 г.