, , . - . , , . - . . , .
: , . ? , - . .
, . . , . , .
: /. . . . . , ( , ). , . .
( )
1. . , . , , .
2. . , , , .. .
|
|
.
1. . . , -- .
2. - , .
:
, . .
3. . , . , . , . :
. .
3. . :
, :
, .
.
1. , , ,
2. :
3. , :
4. .
5. 2. , -- .
4. . .
program PROGRAMMA3;
uses crt, graph;
var v, B, q, F, Fx, Fy: real;
r, x, y, vx,vy,ax,ay: real; Gd, Gm, i: integer;
const M=500; mm=100; dt=0.005; rr=0.1; k=2;
Begin
Gd:= Detect; InitGraph(Gd, Gm, 'c:\bp\bgi');
if GraphResult <> grOk then Halt(1);
line(320,240,640,240); line(320,240,320,0); circle(320,240,5);
x:=100; y:=120; vx:=1; vy:=-2;
Repeat
begin
{-- --}
(* Fy:=3; Fx:=0; *)
(* Fx:=-k*x; Fy:=-k*y; *)
(* r:=sqrt(x*x+y*y); F:=M*mm/(r*r);
Fx:=-F*x/r; Fy:=-F*y/r; *)
B:=2; q:=1; F:=B*v*q; v:=sqrt(vx*vx+vy*vy);
Fx:=F*vy/v; Fy:=-F*vx/v;
(* B:=2; q:=1; F:=B*v*q; v:=sqrt(vx*vx+vy*vy);
Fx:=F*vy/v; Fy:=-0.5-F*vx/v; *)
{-- --}
ax:=(Fx-rr*vx)/mm; ay:=(Fy-rr*vy)/mm;
vx:=vx+ax*dt; vy:=vy+ay*dt; x:=x+vx*dt; y:=y+vy*dt;
circle(round(x)+320,240-round(y),2); setcolor(12);
circle(round(x)+320,240-round(y),1); setcolor(15);
end;
until KeyPressed;
CloseGraph;
END.