You are on page 1of 24

UNIVERSIDAD NACIONAL DE HUANCAVELICA

(Creada por Ley Nº 25265)

FACULTAD DE INGENIERÍA MINAS – CIVIL- AMBIENTAL

ESCUELA PROFESIONAL DE INGENIERIA CIVIL

TEMA:

DIAGRAMA DE FLUJO Y PSEUDOCODIGO DEL CIRCULO DE MOR


EN HP PRIME

CATEDRA:
RESISTENCIA DE MATERIALES I

DOCENTE:
Lic. Edén, SOTO APARCO

PRESENTADO POR:
 SALVATIERRA MENDOZA, Abrahan.

CICLO:
V

AÑO
LIRCAY 15 DE JULIO DEL 2017
DEDICATORIA
Mi trabajo la dedico con todo mi amor y cariño.

A ti mi DIOS que me diste la oportunidad de vivir y de


regalarme una familia maravillosa.

Con mucho cariño principalmente a mis padres que me dieron


la vida y por estar conmigo en todo momento. Gracias por todo
papá y mamá por darme una educación de una carrera
profesional para mi futuro y por creer en mí, aunque hemos
pasado momentos difíciles siempre están apoyándome y
brindándome todo su amor, por todo esto les agradezco de
todo corazón el que estén conmigo a mi lado.
AGRADECIMIENTO

Para poder realizar éste trabajo de la mejor manera posible fue necesaria del
apoyo de muchas personas a las cuales quiero agradecer. En primer lugar a
mis padres, Santos y I. Dominga, quienes son un apoyo moral y económico
para lograr éste trabajo. Gracias por su paciencia. A todas las personas que
han sido de apoyo incondicional, mis compañeros que compartimos la catedra
de curso de RESISTENCIA DE MATERIALES I.

ABRAHAN SALVATIERRA MENDOZA


PRESENTACION

El presente trabajo surge a partir de una necesidad de implementar un servidor


(programa) para la calculadora HP PRIME, para su adecuada manipulación y
resolución de ejercicios de círculo de Mohr ya que es un programa útil para
disminuir el tiempo en la resolución de problemas en específico con la
calculadora HP PRIME.
Espero que el presente trabajo sea del agrado del docente y de mis compañeros
ya que el presente trabajo lo realice con mucha dedicación y eficacia.
OBJETIVO GENERAL
 El objetivo general de este trabajo es dar a conocer el programa
diseñado y realizado para la calculadora HP PRIME (CIRCULO DE
MOHR).

OBJETIVOS ESPECIFICOS
 Dar a conocer el diagrama de flujo del círculo de mohr.
 Dar a conocer el pseudocódigo del círculo de mohr, para el
programa círculo de mohr en la calculadora HP PRIME.
DIAGRAMA DE FLUJO DE CIRCULO DE MOHR

INICIO

σx, σy, τxy

Si No
σx = σy =0

ANG1 = 90*3.2416/180 ANG1 = atan (2*(C)/( σx- σy))


Tprom = (σx+ σy)/2

Radio = ((((σx- σy)/2) ^2)+ τxy ^2)^(1/2)


LEER: ANG1 LEER: ANG1

LEER: Tprom, Radio


ANG = ANG1*180/3.1416

Tmay = Tprom + Radio LEER: ANG

Tmen = Tprom - Radio

LEER: Tmay, Tmen

Fin
PSEUDOCODIGO DE CIRCULO DE MOHR
/////PSEUDOCODIGO PARA CIRCULO DE MOHR EN HP PRIME/////
/////RESISTENCIA DE MATERIAS I//////
/////CICLO V////////
#pragma mode( separator(.,;) integer(h32) )
circulo_mohr();
VIEW "MetNum",START()
BEGIN
startview(6,1);
circulo_mohr();
END;
EXPORT circulo_mohr()
BEGIN
A:=0;B:=0;C:=0;
LOCAL MENU,menu1,k;
REPEAT
CHOOSE(menu1," Círculo de mohr ",".*Ingresar Datos",".* Graficar",".* Resultados",".* Ayuda",".* Autor",".* Salir");
IF menu1==1 THEN
INPUT({{A,[0],{35,40,2}},{B,[0],{35,40,3}},{C,[0],{35,40,4}}},"INGRÉSE LOS DATOS",{"σx = ","σy = ","τxy = "},{"Ingrése la tension en
la dirección de X.","Ingrése la tension en la dirección de Y.","Ingrése el ezfuerzo cortante."});
ELSE
IF menu1==2 THEN
RECT();
DIMGROB(G1,320,240);
RECT_P(G1,0,0,320,240,#FFFFFFh);
FOR k FROM 1 TO 40 DO
LINE_P(G1,0+15*k,0,0+15*k,240,#D8D8D8h);
LINE_P(G1,0,0+15*k,320,0+15*k,#D8D8D8h);
PIXON_P(G1,0,0+15*k,#6E6E6Eh);
PIXON_P(G1,15,0+15*k,#6E6E6Eh);
PIXON_P(G1,30,-15+15*k,#6E6E6Eh);
PIXON_P(G1,45,-30+15*k,#6E6E6Eh);
PIXON_P(G1,60,-45+15*k,#6E6E6Eh);
PIXON_P(G1,75,-60+15*k,#6E6E6Eh);
PIXON_P(G1,90,-75+15*k,#6E6E6Eh);
PIXON_P(G1,105,-90+15*k,#6E6E6Eh);
PIXON_P(G1,120,-105+15*k,#6E6E6Eh);
PIXON_P(G1,135,-120+15*k,#6E6E6Eh);
PIXON_P(G1,150,-135+15*k,#6E6E6Eh);
PIXON_P(G1,165,-150+15*k,#6E6E6Eh);
PIXON_P(G1,180,-165+15*k,#6E6E6Eh);
PIXON_P(G1,195,-180+15*k,#6E6E6Eh);
PIXON_P(G1,210,-195+15*k,#6E6E6Eh);
PIXON_P(G1,225,-210+15*k,#6E6E6Eh);
PIXON_P(G1,240,-225+15*k,#6E6E6Eh);
PIXON_P(G1,255,-240+15*k,#6E6E6Eh);
PIXON_P(G1,270,-255+15*k,#6E6E6Eh);
PIXON_P(G1,285,-270+15*k,#6E6E6Eh);
PIXON_P(G1,300,-285+15*k,#6E6E6Eh);
PIXON_P(G1,315,-300+15*k,#6E6E6Eh);
END;
LOCAL Tprom,Tmay,tmen,radio,ANG,tmax;
LOCAL ANG1;
Tprom:=(A+B)/2;
radio:=((((A-B)/2)^2)+C^2)^(1/2);
Tmay:=Tprom+radio;
tmen:=Tprom-radio;
if A=0 AND B=0 THEN
ANG1:=90*3.14159265359/(180);
ELSE
ANG1:=atan(2*(C)/(A-B));
END;
ANG:=(ANG1)*180/3.14159265359;
L1:={};
L2:={};
IF tmen>=0 AND Tmay>=0 THEN
LINE(G1,-12,9.5,-12,-10,#0080FFh);
LINE(G1,-14,0,15,0,#0080FFh);
LINE(G1,-12+(20*B)/Tmay,0+(20*C)/Tmay,-12+(20*A)/Tmay,0-(20*C)/Tmay,#0080FFh);
arc(G1,-12+(20*Tprom)/Tmay,0,0+5.5*((20*radio)/Tmay)/0.55,#2E2E2Eh);
if ANG1<=0 then
arc(G1,-12+(20*Tprom)/Tmay,0,0+20,3.14159265359-ANG1,2*3.14159265359,#04B404h);
end;
if ANG1>=0 then
arc(G1,-12+(20*Tprom)/Tmay,0,0+20,2*3.14159265359-ANG1,2*3.14159265359,#04B404h);
end;
TEXTOUT("σ1="+trunc(Tmay,2),G1,-11.8+(20*Tmay)/Tmay,-0.2,1,#DF01A5h);
TEXTOUT("σ2="+trunc(tmen,2),G1,-11.8+(20*tmen)/Tmay,-0.2,1,#DF01A5h);
TEXTOUT("●",G1,-12.3+(20*Tprom)/Tmay,0.5,2,#0174DFh);
TEXTOUT("●",G1,-12.3+(20*B)/Tmay,0.5+(20*C)/Tmay,2,#151515h);
TEXTOUT("●",G1,-12.3+(20*A)/Tmay,0.5-(20*C)/Tmay,2,#151515h);
TEXTOUT("C",G1,-13+(20*Tprom)/Tmay,1.1,1,#0174DFh);
IF C>0 THEN
TEXTOUT("B(σy,-τxy)",G1,-12+(20*B)/Tmay,-0.4+(20*C)/Tmay,1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,-12+(20*A)/Tmay,-0.4-(20*C)/Tmay,1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,τxy)",G1,-12+(20*B)/Tmay,-0.4+(20*C)/Tmay,1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,-12+(20*A)/Tmay,-0.4-(20*C)/Tmay,1,#0101DFh);
END;
TEXTOUT("●",G1,-12.3+(20*Tprom)/Tmay,0.5-(20*radio)/Tmay,2,#151515h);
TEXTOUT("τmax",G1,-12+(20*Tprom)/Tmay,-0.5-(20*radio)/Tmay,1,#151515h);
TEXTOUT_P("τmax = R = "+trunc(radio,5),G1,2,5,1,#151515h);
TEXTOUT_P("C (σprom;0) = "+"("+trunc(Tprom,5)+" ; 0 )",G1,180,2,1,#DF013Ah);
BLIT_P(G0,G1);
DRAWMENU("","","","","","VOLVER");
INVERT_P(0,219,320,240);
RECT_P(0,219,263,240,#FF8000h);
TEXTOUT_P("σx=",2,225,1,#151515h);
TEXTOUT_P("σy=",65,225,1,#151515h);
TEXTOUT_P("τxy=",130,225,1,#151515h);
TEXTOUT_P("2θ=",195,225,1,#151515h);
TEXTOUT_P(trunc(A,2),19,225,1,#FFFFFFh);
TEXTOUT_P(trunc(B,2),82,225,1,#FFFFFFh);
TEXTOUT_P(trunc(C,2),149,225,1,#FFFFFFh);
IF ANG<0 THEN
ANG:=180+ANG;
END;
TEXTOUT_P(trunc(ANG,2)+"°",214,225,1,#FFFFFFh);
TEXTOUT("2θ",-9.9+(20*Tprom)/Tmay,-0.3,1,#FF0000h);
TEXTOUT_P("σ+",300,115,5,#151515h);
TEXTOUT_P("τ+",20,190,5,#151515h);
WAIT(-1);
ELSE
LINE(G1,-15,0,15,0,#0080FFh);
LINE(G1,-9,0,9,0,#2E2E2Eh);
LINE(G1,-9,0,9,0,#2E2E2Eh);
if Tmay>0 and tmen<0 then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay)),12,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay)),-15,#0174DFh);
end;
if 0<B and 0<A then
if Tmay>0 and tmen<0 then
if A>B then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0+(18*(C)/(ABS(tmen)+Tmay)),-
9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0-(18*(C)/(ABS(tmen)+Tmay)),#0080FFh);
END;
if A<B then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+ABS(Tmay)))+(18*ABS(A)/(ABS(tmen)+ABS(Tmay))),0-(18*(C)/(ABS(tmen)+ABS(Tmay))),-
9+(18*ABS(tmen)/(ABS(tmen)+ABS(Tmay)))+(18*ABS(B)/(ABS(tmen)+ABS(Tmay))),0+(18*(C)/(ABS(tmen)+ABS(Tmay))),#0080FFh);
END;
end;
END;

if B<0 and A<0 then


if Tmay>0 and tmen<0 then
if A>B then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),0+(18*(C)/(ABS(tmen)+Tmay)),-
9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0-(18*(C)/(ABS(tmen)+Tmay)),#0080FFh);
END;
if A<B then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),0-(18*(C)/(ABS(tmen)+Tmay)),-
9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0+(18*(C)/(ABS(tmen)+Tmay)),#0080FFh);
END;
end;
if Tmay<0 and tmen<0 then
if A>B then
LINE(G1,9-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0+(18*(C)/(ABS(tmen)-ABS(Tmay))),9-(18*(ABS(A)-
ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0-(18*(C)/(ABS(tmen)-ABS(Tmay))),#0080FFh);
END;
if A<B then
LINE(G1,9-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0-(18*(C)/(ABS(tmen)-ABS(Tmay))),9-(18*(ABS(B)-
ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0+(18*(C)/(ABS(tmen)-ABS(Tmay))),#0080FFh);
END;
END;
END;
if A>0 and B<0 then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),0+(18*(C)/(ABS(tmen)+Tmay)),-
9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0-(18*(C)/(ABS(tmen)+Tmay)),#0080FFh);
END;
if B>0 and A<0 then
LINE(G1,-9+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),0-(18*(C)/(ABS(tmen)+Tmay)),-
9+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0+(18*(C)/(ABS(tmen)+Tmay)),#0080FFh);
END;
arc(G1,0,0,0+90,#2E2E2Eh);
if ANG1<0 then
arc(G1,0,0,0+20,3.14159265359-ANG1,2*3.14159265359,#04B404h);
end;
if ANG1>0 then
arc(G1,0,0,0+20,2*3.14159265359-ANG1,2*3.14159265359,#04B404h);
end;
TEXTOUT("σ1="+trunc(Tmay,2),G1,9.2,-0.2,1,#DF01A5h);
TEXTOUT("σ2="+trunc(tmen,2),G1,-8.8,-0.2,1,#DF01A5h);
TEXTOUT("●",G1,-0.3,0.5,2,#0174DFh);
TEXTOUT("C",G1,-1,1.1,1,#151515h);
if 0<B and 0<A then
if Tmay>0 and tmen<0 then
if A>B then
TEXTOUT("●",G1,-
9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
if A<B then
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-
9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
end;
END;
if A>0 and B<=0 then
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))-
(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
if B>0 and A<=0 then
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-
9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
if B<0 and A<0 then
if Tmay>0 and tmen<0 then
if A>B then
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))-
(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
if A<B then
TEXTOUT("●",G1,-9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),0.4-
(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
TEXTOUT("●",G1,-
9.3+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),0.4+(18*(C)/(ABS(tmen)+Tmay)),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σx,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σy,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σx,-τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))-(18*ABS(A)/(ABS(tmen)+Tmay)),-0.4-
(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
TEXTOUT("A(σy,τxy)",G1,-8.7+(18*ABS(tmen)/(ABS(tmen)+Tmay))+(18*ABS(B)/(ABS(tmen)+Tmay)),-
0.4+(18*(C)/(ABS(tmen)+Tmay)),1,#0101DFh);
END;
END;
end;
if Tmay<0 and tmen<0 then
if A>B then
TEXTOUT("●",G1,8.7-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0.5+(18*(C)/(ABS(tmen)-ABS(Tmay))),2,#151515h);
TEXTOUT("●",G1,8.7-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0.5-(18*(C)/(ABS(tmen)-ABS(Tmay))),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σy,-τxy)",G1,9.3-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4+(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
TEXTOUT("A(σx,τxy)",G1,9.3-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4-(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σy,τxy)",G1,9.3-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4+(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
TEXTOUT("A(σx,-τxy)",G1,9.3-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4-(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
END;
END;
if A<B then
TEXTOUT("●",G1,8.7-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0.5-(18*(C)/(ABS(tmen)-ABS(Tmay))),2,#151515h);
TEXTOUT("●",G1,8.7-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),0.5+(18*(C)/(ABS(tmen)-ABS(Tmay))),2,#151515h);
IF C>0 THEN
TEXTOUT("B(σx,τxy)",G1,9.3-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4-(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
TEXTOUT("A(σy,-τxy)",G1,9.3-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4+(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
END;
IF 0>C THEN
TEXTOUT("B(σx,-τxy)",G1,9.3-(18*(ABS(A)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4-(18*(C)/(ABS(tmen)-ABS(Tmay))),1,#0101DFh);
TEXTOUT("A(σy,+τxy)",G1,9.3-(18*(ABS(B)-ABS(Tmay))/(ABS(tmen)-ABS(Tmay))),-0.4+(18*(C)/(ABS(tmen)-
ABS(Tmay))),1,#0101DFh);
END;
END;
END;
END;
TEXTOUT("●",G1,0,-8.5,2,#151515h);
TEXTOUT("τmax",G1,0,-10,1,#151515h);
TEXTOUT("R",G1,4,1.5,3,#DF013Ah);
TEXTOUT_P("τmax = R = "+trunc(radio,5),G1,2,5,1,#151515h);
TEXTOUT_P("C (σprom;0) = "+"("+trunc(Tprom,5)+" ; 0 )",G1,180,2,1,#DF013Ah);
BLIT_P(G0,G1);
DRAWMENU("","","","","","VOLVER");
INVERT_P(0,219,320,240);
RECT_P(0,219,263,240,#FF8000h);
TEXTOUT_P("σx=",2,225,1,#151515h);
TEXTOUT_P("σy=",65,225,1,#151515h);
TEXTOUT_P("τxy=",130,225,1,#151515h);
TEXTOUT_P("2θ=",195,225,1,#151515h);
TEXTOUT_P(trunc(A,2),19,225,1,#FFFFFFh);
TEXTOUT_P(trunc(B,2),82,225,1,#FFFFFFh);
TEXTOUT_P(trunc(C,2),149,225,1,#FFFFFFh);
IF ANG<0 THEN
ANG:=180+ANG;
END;
TEXTOUT_P(trunc(ANG,2)+"°",214,225,1,#FFFFFFh);
TEXTOUT("2θ",2.1,-0.3,1,#FF0000h);
TEXTOUT_P("σ+",300,115,5,#151515h);
TEXTOUT_P("τ+",20,190,5,#151515h);
WAIT(-1);
END;
LOCAL TM,TMN;
TMN:=tmen;
TM:=Tmay;
IF A>0 AND B>0 THEN
ELSE
tmen:=TM;
Tmay:=TMN;
END;
L1:={"σx","σy","τxy","2θ","θ","Radio","σprom","σ1","σ2","τmax"};
L2:={trunc(A,6),trunc(B,6),trunc(C,6),trunc(ANG,6)+"° = "+trunc(ANG1,6)+" Radianes",trunc(ANG/2,6)+"° = "+trunc(ANG1/2,6)+"
Radianes",trunc(radio,6),trunc(Tprom,6),trunc(tmen,6),trunc(Tmay,6),trunc(radio,6)};
ELSE
IF menu1==3 THEN
RECT();
DIMGROB_P(G5,320,240);
RECT(G5);
local k;
RECT_P(G5,0,0,320,1,#045FB4h);
RECT_P(G5,0,2,320,12,#084B8Ah);
RECT_P(G5,0,13,320,18,#045FB4h);
line_p(G5,0,18,320,18,0);
TEXTOUT_P("Círculo de mohr",G5,80,1,3,#FFFFFFh,300);
for k from 1 to 10 do
TEXTOUT_P(L1(k),G5,20,15+17*k,4,#FF0000h,300);
TEXTOUT_P("=",G5,70,17+17*k,4,#000000h,300);
TEXTOUT_P(L2(k),G5,90,21+17*k,2,#0174DFh,300);
end;
BLIT_P(G0,G5);
DRAWMENU("","","","","","Volver");
INVERT_P(0,219,320,240);
WAIT(-1);
ELSE
IF menu1==4 THEN
RECT();
local k;
L3:={"σx :tension en la dirección de X ","σy :tension en la dirección de Y","τxy :ezfuerzo cortante","σprom = (σx+σy)/2","Radio = √((((σx-
σy)/2)^2)+τxy^2)","σ1 = σprom+Radio","σ2 = σprom-Radio","2θ = (180/π)*arctan(2*τxy/(σx-σy)) grados","τmax = Radio"};
for k from 1 to 9 do
TEXTOUT_P(L3(k),20,15+17*k,3,#000000h,300);
END;
DRAWMENU("","","","","","Volver");
INVERT_P(0,219,320,240);
WAIT(-1);
ELSE
IF menu1==5 THEN
DIMGROB_P(G8,320,240);
RECT(G8);
RECT_P(G8,0,0,320,240,#0080FFh);
TEXTOUT_P("CIRCULO DE MOHR",G8,112,6,7,#1C1C1Ch,300);
TEXTOUT_P("CIRCULO DE MOHR",G8,111,5,7,#FF0040h,300);
TEXTOUT_P("PROGRAMACIONENHPPRIME",G8,21,31,7,#1C1C1Ch,400);
TEXTOUT_P("PROGRAMACIONENHPPRIME",G8,20,30,7,#FFFFFFh,300);
TEXTOUT_P("ING. CIVIL LIRCAY",G8,20,60,7,#1C1C1Ch,300);
TEXTOUT_P("DESARROLLADO :",G8,10,110,1,#1C1C1Ch,100);
TEXTOUT_P("ABRAHAN SALVATIERRA MENDOZA",G8,105,110,1,#FFFFFFh,400);
TEXTOUT_P("CORREO :",G8,10,120,1,#1C1C1Ch,300);
TEXTOUT_P("asalvatierramendoza@hotmail.com",G8,105,120,1,#FFFFFFh,300);
TEXTOUT_P("NUMERO DE CEL. :",G8,10,130,1,#1C1C1Ch,300);
TEXTOUT_P("927305843",G8,105,130,1,#FFFFFFh,300);
TEXTOUT_P(" El uso de este programa para los estudiantes ",G8,25,160,1,#1C1C1Ch,300);
TEXTOUT_P(" de ingenieria civil UNH y otros.",G8,40,170,1,#1C1C1Ch,300);
TEXTOUT_P("DEDICO A LOS ESTUDIANTES DE LA UNH",G8,80,190,1,#FFFFFFh,300);
TEXTOUT_P("LIRCAY, JULIO - 2017",G8,88,205,3,#FFFFFFh,300);
TEXTOUT_P("✘",G8,300,220,5,#FF0040h,200);
BLIT_P(G0,G8);
WAIT(-1);
END;
END;
END;
END;
END;
UNTIL menu1==6;
MSGBOX("PROGRAMA DESARROLLADO POR ABRAHAN SALVATIERRA MENDOZA: ... gracias ✌");
END;
///////////////////////////////////////////////////////////////////
ANEXOS
CONCLUCION
 El programa realizado es de mucha importancia en la calculadora HP
PRIME para el cálculo de círculo de mohr.
 Es de mucha ayuda para el estudiante de ingeniería, y la reducción de
tiempo en las resoluciones de ejercicios.
RECOMENDACIONES
 Revisar el pseudocódigo antes de copiar a la calculadora HP PRIME.
 Proseguir con la configuración del programa para su funcionamiento.
 Hacer correr el programa en el emulador.
BIBLIOGRAFIA
Archivos internet
 [HP-Prime] Introducción a la programación
 156381164-Analisis-Estructural-JEFF-LAIBLE
 Algoritmos ejemplos resueltos