procedure Forml. button1_Click (sender: Object; e: EventArgs);
var x, y, h, k, x0, xn: reali x1, yl, n, c_x, c_y: integer;
gr: Graphics; bm: Bitmap;
P_C: Pen;
begin
//подготовка графической области / / для рисования по пикселям
bm: = new Bitmap (PictureBox1. Width,
Picturebox1. Height);
pictureBox1. Image := (Image) (bm) ; gr:= Graphics. FromImage (pictureBox1.Image);
/ / закраска графической области белым / /цветом
gr. Clear (Color.White);
/ / количество точек
n := 10000;
/ / концы промежутка
x0 : = StrToFloat (TextBox1. Text) ;
xn := StrToFloat (TextBox2. Text);
// центр области построения
C_x:= PictureBox1. Width div 2;
C_Y :=PictureBox1.Height div 2;
/ / масштабный коэффициент
k := PictureBox1.Width .Width / (xn- x0) ;
// шаг
h := (xn - x0) / n;
x : = x0;
//оси
P_C : = new Pen (Color. Black, 1) ;
gr. DrawLine (P_C, 0, C_Y, 2*c_x, C_Y) ; gr. DrawLine (P_C, C_x, 0, c_x, 2*c_y) ;
for var i := 1 ton do begin
y :=x*sin(x);
x1 := trunc (x*k) + c_x; y1 := trunc (-y*k) + c_y ;
/ / проверка попадания точки / / в графическую область
if (y1>= 0) and (y1<2*c_y) then
x:=x+ h;
bm. SetPixel (x1, y1, Color.Blue);
end;
end;