|
Фамилия Карпенко
Группа ПТМ-27б ПТМ-27б
Расчет пластинчатого конвейера(питателя)
{$N+}
{$M 16384,0,26384}
Program Ravn;
Uses crt,graph,wink,Greek;
Label m,m0,m1,m2,m3,m4,m5,nach;
Const g=9.81;eps=0.0000001;
Var
i,j,k,N,x0,y0,priz,it:integer;
Pi1,ka,Lp,Lb,a1,b1,a2,b2,Gc,Gk,ra1,ra2,ra3,ra4,Dk,
Lij,c,s,be,psi1,psi5,dpsi,mx,my,ra,dlm,dlb,count,
DL1,dL8,R1,R2,R3,R4,R5,R6,R7,R8,R9,R10,R11,
Rs1,Rs2,Rs3,Rs4,Rs5,Rs6,Rs7,Rs8,Rs9,Rs10,Rs11:extended;
C0,C1:array[1..10,1..11] of extended;
L,Lbeg,q,psi,psib,R,EF:array[1..12] of extended;
x,y,Rs:array[1..11] of extended;
xi,yi,Rsi,krat:array[1..12] of integer;
ch:char;
path:string;
te:text;
procedure SYS(N:integer);
var I,J,K:byte;ra:extended;
Label MM;
Begin
if C0[1,1]=0 then
Begin
for I:=2 to N do if C0[I,1]<>0 then goto MM;
MM: for J:=1 to N+1 do
Begin
ra:=C0[1,J];C0[1,J]:=C0[I,J];C0[I,J]:=ra
End
End;
for I:=1 to N do for J:=2 to N+1 do
Begin
ra:=C0[I,I];
if I=1 then C0[I,J]:=C0[I,J]/C0[1,1] else
Begin
if J<=I then
for K:=1 to J-1 do C0[I,J]:=C0[I,J]-C0[I,K]*C0[K,J] else
Begin
for K:=1 TO I-1 DO C0[I,J]:=C0[I,J]-C0[I,K]*C0[K,J];
C0[I,J]:=C0[I,J]/ra
End
End
End;
for I:=2 to N do
Begin
K:=N+1-I;
for J:=1 to I-1 do C0[K,N+1]:=C0[K,N+1]-C0[K,N+1-J]*C0[N+1-J,N+1]
End
End;
function ugol(i,k:byte):extended;
var a,b,c:extended;
Begin
a:=y[i]-y[k];b:=x[i]-x[k];
if a=0 then
Begin
if b>=0 then c:=0 else c:=pi
end else if b=0 then
Begin
if a>0 then c:=pi/2 else c:=-pi/2
End else
Begin
c:=ArcTan(a/b);
if b<0 then c:=c+pi
End;
ugol:=c
End;
procedure Forces(kk:byte);
Label m,m1;
var cc:extended;
Begin
m: if keypressed and (readkey=#27) then
Begin
priz:=1;exit
End;
Lij:=sqrt(sqr(x[1]-x[10])+sqr(y[1]-y[10]));
c:=(sqr(Lij)+sqr(L[9])-sqr(L[8]))/(2*Lij*L[9]);
if abs(c)>=1 then
xi2:=x0+round(mx*x[8]);
yi2:=y0-round(mx*y[8]);
fi:=round(Angle(x[7],y[7],x[8],y[8])/pi1);
li:=round(mx*sqrt(sqr(x[8]-x[7])+sqr(y[8]-y[7]))) div 2;
LineAn(xp,yp,xi1,yi1,li,fi,2);
if fi>0 then Vynos(j,xp,yp,-3,-3,2,'10') else Vynos(j,xp,yp,-3,3,2,'10');
xp:=xi[7]+round(mx*(a2*cos(psi[10])-b2*sin(psi[10])));
yp:=yi[7]-round(my*(a2*sin(psi[10])+b2*cos(psi[10])));
Circle(xp,yp,2);
LineAn(xp,yp,xp,yp,30,-90,1);OutLetter(xp+6,yp-6,'Gk');
xp:=50;yp:=50;dx:=70;dy:=14;
str(R[7]:0:0,s);
OutLetter(xp,yp,'R1');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[5]:0:0,s);
OutLetter(xp,yp,'R4');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[8]:0:0,s);
OutLetter(xp,yp,'R5');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[2]:0:0,s);
OutLetter(xp,yp,'R6');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[6]:0:0,s);
OutLetter(xp,yp,'R7');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[1]:0:0,s);
OutLetter(xp,yp,'R8');OutTextXY(xp+15,yp-3,'='+s);
xp:=xp+dx;yp:=50+dy;
str(R[3]:0:0,s);
OutLetter(xp,yp,'Rx');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(R[4]:0:0,s);
OutLetter(xp,yp,'Ry');OutTextXY(xp+15,yp-3,'='+s);
xp:=xp+dx;yp:=50+dy;
str(Gc:0:0,s);
OutLetter(xp,yp,'Gc');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(Gk:0:0,s);
OutLetter(xp,yp,'Gk');OutTextXY(xp+15,yp-3,'='+s);
xp:=xp+dx;yp:=50+dy;
str(psi[10]/pi1:0:3,s);
OutGreekSmall(xp,yp-12,-2,-2,'psi','10');
OutTextXY(xp+20,yp-3,'='+s);
yp:=yp+dy;
str(psi[5]/pi1:0:3,s);
OutGreekSmall(xp,yp-12,-2,-2,'psi','5');
OutTextXY(xp+20,yp-3,'=' +s);
yp:=yp+dy;
str(psi[7]/pi1:0:3,s);
OutGreekSmall(xp,yp-12,-2,-2,'psi','7');
OutTextXY(xp+20,yp-3,'='+s);
yp:=yp+dy;
str(psi[9]/pi1:0:3,s);
OutGreekSmall(xp,yp-12,-2,-2,'psi','9');
OutTextXY(xp+20,yp-3,'='+s);
xp:=xp+dx+5;yp:=49+dy;
str(x[8]:0:0,s);
OutLetter(xp,yp,'xk');
OutTextXY(xp+20,yp-3,'='+s);
xp:=xp+dx+5;yp:=49+dy;
str(y[8]:0:0,s);
OutLetter(xp,yp,'yk');
OutTextXY(xp+20,yp-3,'='+s);
xp:=50;yp0:=370;yp:=yp0;j:=0;
for i:=1 to 9 do
Begin
if (i=6) and (j=0) then
Begin
xp:=xp+dx;
yp:=yp0+dy;j:=1
End;
str(i:0,st);
str(L[i]:0:0,s);
OutLetter(xp,yp,'L'+st);
OutTextXY(xp+15,yp-3,'='+s);
yp:=yp+14
End;
str(Lb:0:0,s);
OutLetter(xp,yp,'Lb');
OutTextXY(xp+15,yp-3,'='+s);
xp:=xp+dx;yp:=yp0+2*dy;
str(a1:0:0,s);
OutLetter(xp,yp,'a1');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(b1:0:0,s);
OutLetter(xp,yp,'b1');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(a2:0:0,s);
OutLetter(xp,yp,'a2');OutTextXY(xp+15,yp-3,'='+s);yp:=yp+dy;
str(b2:0:0,s);
OutLetter(xp,yp,'b2');OutTextXY(xp+15,yp-3,'='+s);
SetTextStyle(2,0,2);
Numb(x[2],y[2],-1,-Rsi[2]-10,'2');
Numb(x[3],y[3],-1,-Rsi[2]-10,'3');
Numb(x[5],y[5],Rsi[5]+4,-3,'5');
Numb(x[9],y[9],-1,-Rsi[2]-10,'9');
Numb(x[11],y[11],-3,-Rsi[2]-10,'11');
Numb(x[10],y[10],-3,-Rsi[2]-10,'10');
Numb(x[4],y[4],-3,-10,'4');
Numb(x[1],y[1],-6,-12,'1');
Numb(x[7],y[7],-1,3,'7');
Numb(x[8],y[8],-1,3,'8');
Numb(x[6],y[6],-6,-5,'6');
SetTextStyle(0,0,0)
End;
Procedure Help;
var ch:char;
Label m;
var x,y:integer;
Begin
SetFillStyle(1,1);
Bar(0,0,GetMaxX,GetMaxY);
SetColor(12);
SetTextJustify(CenterText,TopText);
SetTextStyle(0,0,2);
OutTextXY(GetMaxX div 2,100,'Нажмите следующие клавиши');
OutTextXY(GetMaxX div 2,100+30,'для изменения элементов:');
SetTextJustify(LeftText,TopText);
x:=200;y:=175;
SetTextStyle(0,0,0);
Дата добавления: 2015-10-29; просмотров: 74 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
List of English Words | | | SetColor(14); |