Clase Nro 10 Hp Prime

  • Uploaded by: michel
  • 0
  • 0
  • February 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Clase Nro 10 Hp Prime as PDF for free.

More details

  • Words: 1,870
  • Pages: 13
Loading documents preview...
TEMAS APLICADOS A INGENIERÍA CIVIL

TALLER DE PROGRAMACIÓN EN LA CALCULADORA HP PRIME

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH CEL: 982925212 GMAIL: [email protected] WHATSAPP: 982925212

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212

PROGRAMACIÓN EN HP PPL CLASE N°10

TEMA: CÓDIGO FUENTE DE PROGRAMAS

TEMAS ESPECÍFICOS

COMANDOS A UTILIZAR

TEMA DE APLICACIÓN

1. Código fuente clase N°01: EXPORT CLASE_N°01() BEGIN //Declaración de variables LOCAL NA,NB,EA,EB,L,Ang; //Datos asignados directamente NA:=8584272; EA:=7475234; L:=850; Ang:=55; //Proceso de cálculo NB:=NA+L*COS(Ang); EB:=EA+L*SIN(Ang); //Limpiando la pantalla PRINT; //Imprimiendo resultados PRINT("RESULTADOSCOORDENADAS UTM"); PRINT("Norte en B="+EA); PRINT("Este en B="+EB); END;

2. Código fuente clase N°02: EXPORT f(Long,Wo,x) BEGIN //Declaracion de variables

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

                  

Introducción a objetos gráficos Comando FREEZE Comando WAIT(n) Comando RGB Comando RECT_P Comando LINE_P Comando ARC_P Comando TRIANGLE_P Comando FILLPOLY_P Comando TEXTOUT_P Insertar imágenes en la programación LOCAL INPUT PRINT MSGBOX IF FOR WHILE HIDRAÚLICA DE CANALES: Cálculo del caudal de un canal de sección compuesta

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 LOCAL RA,RB,V,M,Y; //Proceso de calculo RA:=Wo*Long/PI; RB:=RA; V:=Wo*Long/PI*COS(PI*X/Long); M:=Wo*Long^2/PI^2*SIN(PI*X/Long); Y:=-Wo*Long^4/PI^4*SIN(PI*X/Long); //Limpiando la pantalla PRINT; //Imprimiendo resultados PRINT("RESULTADOS"); PRINT("Reaccion en A = "+ROUND(RA,3)+"Ton"); PRINT("Reaccion en B = "+ROUND(RB,3)+"Ton"); PRINT("Cortante(V) en el punto "+X+" = "+ROUND(V,3)+"Ton"); PRINT("Momento(M) en el punto "+X+" = "+ROUND(M,3)+"Ton-m"); END;

3. Código fuente clase N°03: EXPORT CLASE_N°03_() BEGIN //Declaracion de variables LOCAL Q,s,n,Z,b; LOCAL Yi, Emax,Ei; LOCAL K,A,P,F,Fd; LOCAL dA,dP,Ymej; //Valores por defecto //Ingreso de datos a traves del comando INPUT INPUT({Q,s,n,Z,b},"CANALES TRAPEZOIDALES",{"Caudal[m3/s]=","Pend.[m/m]=","Rugosidad(n)=","Talud(Z)=","Base[m]="}); //Valores constantes K:=Q*n/s^0.5; //Asiganado valores iniciales Yi:=1; Emax:=0.0001; Ei:=1; I:=1; //Limpiar la pantalla PRINT; //Textos de resultados PRINT("-----------------------------"); PRINT("RESULTADOS"); PRINT("-----------------------------"); //Manejo del comando WHILE WHILE Ei>Emax DO A:=b*Yi+Z*Yi^2; dA:=b+2*Yi*Z; P:=b+2*Yi*(1+Z^2)^0.5; dP:=2*(1+Z^2)^0.5; F:=A^(5/3)*P^(-2/3)-K; Fd:=(5/3)*A^(2/3)*P^(-2/3)*dA-(2/3)*A^(5/3)*P^(-5/3)*dP; Ymej:=Yi-F/Fd; //Imprimir iteraciones PRINT("Iteración N°"+I); PRINT("Area="+A); PRINT("Perimetro="+P); PRINT("Tirante="+Ymej); PRINT("-----------------------------"); Ei:=Yi-Ymej; Yi:=Ymej; I:=I+1; END; //Imprimir resultado PRINT("RESULTADOS FINALES"); PRINT("Tirante="+ROUND(Ymej,3)); PRINT("Area mojada="+ROUND(A,3));

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 PRINT("Perimetro mojado="+ROUND(P,3)); PRINT("Espejo de agua="+ROUND((b+2*Ymej*Z),3)); PRINT("Radio hidraulico="+ROUND(A/P,3)); PRINT("Velocidad="+ROUND(Q/A,3)) END;

4. Código fuente clase N°04: //Código fuente Ecuacion de Colebrook White EXPORT CLASE_N°04_COLEBROOK() BEGIN //Declaracion de variables LOCAL Re,D,K,Emax; LOCAL F,FD,Xmej,Xi,Ei; //Valores por defecto Re:=2500; D:=203; K:=0.16; //Entrada de datos con INPUT INPUT({Re,D,K,Emax},"Colebrook White",{"Reynolds=","Diametro=","Rugosidad=","Emax="}); //Valores constantes A:=K/(3.7*D); B:=2.51/Re; //Valores iniciales Ei:=1; Xi:=1; //Limpiando al pantalla y colocando textos PRINT; PRINT("-----------------------------"); PRINT("RESULTADOS"); PRINT("-----------------------------"); //Aplicando el coma do FOR FOR I FROM 1 TO 40 DO //Definiendo la funcion F:=2*LOG(A+B*Xi)+Xi; //Definiendo la derivada de la funcion FD:=1+2*B/((A+B*Xi)*LN(10)); //Aplicando la fórmula de Newton Raphson Xmej:=Xi-F/FD; //Reemplazamos el Ei Ei:=1/Xi^2-1/Xmej^2; //Imprimiendo iteraciones PRINT("ITERACION N°"+I); PRINT("Fricción="+1/Xmej^2); PRINT("Error="+Ei); PRINT("-----------------------------"); //Condionando con el comando IF IF Ei<Emax THEN I:=41; END; //Asigamos nuevo valor a Xi Xi:=Xmej; END; //Resulatados finales PRINT("Resultado final"); PRINT("La fricción es="+1/Xmej^2); END;

5. Código fuente clase N°05: EXPORT CLASE_N°05() BEGIN //Declaración de variables LOCAL MENU,f,a,b,Emax; LOCAL Ei,F,fd,Fd,Xmej;

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 LOCAL Pf,Nr,B,s,Nm; REPEAT CHOOSE(MENU,"FUNCIONES","DATOS INCIALES","CALCULAR","RESULTADOS","SALIR"); //DATO INICIALES IF MENU==1 THEN //Manejo del comando INPUT INPUT({ {f ,[8],{20,25,1}}, {X ,[0],{20,25,2}}, {Emax,[0],{20,25,3}}, {a ,[0],{20,25,4}}, {b ,[0],{20,25,5}}, {Pf ,0,{80,0,1}}, {Nr ,0,{80,0,2}}, {B ,0,{80,0,3}}, {s ,0,{80,0,4}}}, "DATOS INICIALES", {"Fun.=","Xi=","Emax=","a=","b=","P. Fijo=","N. Raphson=","Bisecc.=","Secante="}); END; //CALCULAR IF MENU=2 THEN //Condicional para Newton Raphason IF Nr==1 THEN Nm:="Newton Raphson"; fd:=CAS.diff(f,X); Ei:=1; //Aplicando comando WHILE WHILE Ei>Emax DO F:=EVAL(f); Fd:=EVAL(fd); Xmej:=X-F/Fd; Ei:=ABS(X-Xmej); X:=Xmej; END; MSGBOX("Cálculo realizado con éxito!!!"); END; END; //RESULTADOS IF MENU==3 THEN //Limpiar la pantalla PRINT; //Imprimiendo resultados PRINT("RESULTADOS"); PRINT(""); PRINT("Método="+Nm); PRINT("La función es="+f); PRINT("La derivada de la función es="+fd); PRINT("La raiz de la función es="+X); //Congelando la pantalla para visualizar WAIT(-1); END; UNTIL MENU==4; END;

6. Código fuente clase N°06: //CODIGO FUENTE DISEÑO DE CANALES EXPORT CLASE_N°06_CANALES() BEGIN //Declaracion de variables LOCAL MENU; LOCAL Q,s,n,Z,b; LOCAL Yi, Emax,Ei; LOCAL K,A,P,F,Fd; LOCAL dA,dP,Ymej;

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 LOCAL MR; REPEAT CHOOSE(MENU,"CANALES VARIAS SECCIONES",{"DATOS INICIALES","CALCULAR","ITERACIONES","RESULTADOS","SALIR"}); //Datos inciales IF MENU==1 THEN //Datos por defecto Q:=3; s:=0.01; n:=0.014; Z:=1; b:=1.5; //Ingreso de datos a traves del comando INPUT INPUT({ {Q,[0],{40,20,1}}, {s,[0],{40,20,2}}, {n,[0],{40,20,3}}, {Z,[0],{40,20,4}}, {b,[0],{40,20,5}} }, "CANALES TRAPEZOIDALES", {"Caudal[m3/s]=","Pend.[m/m]=","Rugos.(n)=","Talud(Z)=","Base[m]="}); END; //Calcular IF MENU==2 THEN //Valores constantes K:=Q*n/s^0.5; //Asiganado valores iniciales Yi:=1; Emax:=0.0001; Ei:=1; I:=1; //Crear la matriz MR:=[[0]]; //Manejo del comando WHILE WHILE Ei>Emax DO A:=b*Yi+Z*Yi^2; dA:=b+2*Yi*Z; P:=b+2*Yi*(1+Z^2)^0.5; dP:=2*(1+Z^2)^0.5; F:=A^(5/3)*P^(-2/3)-K; Fd:=(5/3)*A^(2/3)*P^(-2/3)*dA-(2/3)*A^(5/3)*P^(-5/3)*dP; Ymej:=Yi-F/Fd; Ei:=Yi-Ymej; MR(I,1):=Yi; //Tirante inicial MR(I,2):=A; //Area MR(I,3):=dA; //Dife. Area MR(I,4):=P; //Perimetro MR(I,5):=dP; //Dif. Perimetro MR(I,6):=F; //Funcion MR(I,7):=Fd; //Funcion derivada MR(I,8):=Ymej; //Tirante mejorada Yi:=Ymej; I:=I+1; END; MSGBOX("Calculo realizado con éxito!!!"); END; //Iteraciones IF MENU==3 THEN MR:=ROUND(MR,4); EDITMAT(MR,{"ITERACIONES",{},{"Yi[m]","A[m2]","dA","P[m]","dP","F","Fd","Yf[m]",""}}); END; //Resultados IF MENU==4 THEN PRINT; PRINT("--------------------------"); PRINT("RESULTADOS FINALES"); PRINT("--------------------------");

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 PRINT("Tirante="+ROUND(Ymej,3)); PRINT("Area mojada="+ROUND(A,3)); PRINT("Perimetro mojado="+ROUND(P,3)); PRINT("Espejo de agua="+ROUND((b+2*Ymej*Z),3)); PRINT("Radio hidraulico="+ROUND(A/P,3)); PRINT("Velocidad="+ROUND(Q/A,3)); WAIT(-1); END; UNTIL MENU==5; MSGBOX("Gracias por su preferencia!!!"); END;

7. Código fuente clase N°07: EXPORT CLASE_N°01_ARMADURAS() BEGIN //Declaracion de variables LOCAL Teta, Bet, MENU, MF,MR,k; REPEAT //Apliando el comando CHOOSE CHOOSE(MENU,"ARMADURAS",{"DATOS INICIALES","DATOS DE FUERZAS","CALCULAR","TABLAS","RESULTADOS","SALIR"}); //Datos iniciales IF MENU==1 THEN INPUT({ {Teta,[0],{40,10,2}}, {Bet,[0],{40,10,3}}}, "DATOS INCIALES", {"Áng. Teta=","Áng. Beta="}); END; //Datos de fuerzas IF MENU==2 THEN MF:=MAKEMAT(0,6,1); EDITMAT(MF,{"FUERZAS EXTERNAS",{"F1-H","F1-V","F2-H","F2-V","F3-H","F3-V",""},{"F[Ton]",""}}); END; //Calcular IF MENU==3 THEN //Implementado la Matriz K k:=[[COS(Teta),0,-COS(Bet),0,0,0], [SIN(Teta),0,SIN(Bet),0,0,0], [-COS(Teta),-1,0,-1,0,0], [-SIN(Teta),0,0,0,-1,0], [0,1,COS(Bet),0,0,0], [0,0,-SIN(Bet),0,0,-1]]; //Proceso de cálculo MR:=MF/k; MSGBOX("Calculo realizado con éxito!!!"); END; //Tablas IF MENU==4 THEN LOCAL MENU1; REPEAT CHOOSE(MENU1,"TABLAS",{"MATRIZ [K]","MATRIZ FUERZA EXTERNA","VOLVER"}); IF MENU1==1 THEN EDITMAT(k,{"MATRIZ [K]",{},{}}); END; IF MENU1==2 THEN EDITMAT(MF,{"FUERZAS EXTERNAS",{"F1-H","F1-V","F2-H","F2-V","F3-H","F3-V",""},{"F[Ton]",""}}); END; UNTIL MENU1==3; END ; //Resulatados IF MENU==5 THEN

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 LOCAL IT; PRINT; PRINT("....................................................."); PRINT("RESULTADOS FINALES"); PRINT("....................................................."); FOR I FROM 1 TO 6 DO IF I<=3 THEN IT:="Barra N°"+I+"="; ELSE IT:="Reacción=" END; PRINT(IT+MR(I,1)); END; WAIT(-1); END; UNTIL MENU==6; END;

8. Código fuente clase N°08: EXPORT CLASE_N°08() BEGIN //Declaracion de variables LOCAL MENU,n,s,Nc,MC; LOCAL Lx,Sa1,Sa2,A,P,Q; LOCAL T,R,V; //Uso de comando CHOOSE REPEAT CHOOSE(MENU,"SECCIONES COMPUESTAS",{"DATOS INICIALES","COORDENADAS","CALCULAR","RESULTADOS","SALIR"}); //Datos iniciales IF MENU==1 THEN INPUT({ {Nc,[0],{50,20,2}}, {n ,[0],{50,20,3}}, {s ,[0],{50,20,4}}}, "DATOS INICIALES", {"N° de coordenadas=","Rugosidad=","Pendiente="}); END; //Coordenadas IF MENU==2 THEN //Filas Lx:={0}; FOR I FROM 1 TO Nc DO Lx(I):="C-"+I; END; Lx(I):=""; MC:=MAKEMAT(0,Nc,2); EDITMAT(MC,{"COORDENADAS",Lx,{"X[m]","Y[m]",""}}); END; //Calcular IF MENU==3 THEN //Creando una copia de la fila una de la Matriz coordendas MC(Nc+1,1):=MC(1,1); //Copia de la fila 1 columna 1 MC(Nc+1,2):=MC(1,2); //Copia de la fila 1 columna 2 Sa1:=0; Sa2:=0; P:=0; FOR I FROM 1 TO Nc DO Sa1:=Sa1+MC(I,1)*MC(I+1,2); Sa2:=Sa2+MC(I+1,1)*MC(I,2); P:=P+((MC(I+1,1)-MC(I,1))^2+(MC(I+1,2)-MC(I,2))^2)^0.5; END; A:=ABS(0.5*(Sa1-Sa2)); //Cálculo de todos los elementos

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 Q:=A^(5/3)*P^(-2/3)*s^(1/2)/n; T:=((MC(1,1)-MC(Nc,1))^2+(MC(1,2)-MC(Nc,2))^2)^0.5; P:=P-T; R:=A/P; V:=Q/A; MSGBOX("Cálculo realizado con éxito!!!"); END; //Resultados finales IF MENU==4 THEN PRINT; PRINT("---------------------"); PRINT("RESULTADOS"); PRINT("---------------------"); PRINT("El caudal="+ROUND(Q,3)); PRINT("Area="+ROUND(A,3)); PRINT("Perimetro="+ROUND(P,3)); PRINT("Espejo de agua="+ROUND(T,3)); PRINT("Radio Hidraúlico="+ROUND(R,3)); PRINT("Velocidad="+ROUND(V,3)); WAIT(-1); END; UNTIL MENU==5; END;

9. Código fuente clase N°09: EXPORT CLASE_N°09() BEGIN //Declaracion de variables LOCAL MENU,n,s,Nc,MC; LOCAL Lx,Sa1,Sa2,A,P,Q; LOCAL T,R,V,MCC; LOCAL Cx,Cy,LC,LCC,I; //Uso de comando CHOOSE REPEAT CHOOSE(MENU,"SECCIONES COMPUESTAS",{"DATOS INICIALES","COORDENADAS","CALCULAR","RESULTADOS","GRAFICA","SALIR"}); //Datos iniciales IF MENU==1 THEN Nc:=4; n:=0.0016; s:=0.01; INPUT({ {Nc,[0],{50,20,2}}, {n ,[0],{50,20,3}}, {s ,[0],{50,20,4}}}, "DATOS INICIALES", {"N° de coordenadas=","Rugosidad=","Pendiente="}); END; //Coordenadas IF MENU==2 THEN //Filas Lx:={0}; FOR I FROM 1 TO Nc DO Lx(I):="C-"+I; END; Lx(I):=""; MC:=MAKEMAT(0,Nc,2); //MC:=[[0,0],[0,3],[3,3],[3,0]]; MC:=M1; EDITMAT(MC,{"COORDENADAS",Lx,{"X[m]","Y[m]",""}}); MCC:=MC; M1:=MC; END; //Calcular IF MENU==3 THEN

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 //Creando una copia de la fila una de la Matriz coordendas MC(Nc+1,1):=MC(1,1); //Copia de la fila 1 columna 1 MC(Nc+1,2):=MC(1,2); //Copia de la fila 1 columna 2 Sa1:=0; Sa2:=0; P:=0; FOR I FROM 1 TO Nc DO Sa1:=Sa1+MC(I,1)*MC(I+1,2); Sa2:=Sa2+MC(I+1,1)*MC(I,2); P:=P+((MC(I+1,1)-MC(I,1))^2+(MC(I+1,2)-MC(I,2))^2)^0.5; END; A:=ABS(0.5*(Sa1-Sa2)); //Cálculo de todos los elementos Q:=A^(5/3)*P^(-2/3)*s^(1/2)/n; T:=((MC(1,1)-MC(Nc,1))^2+(MC(1,2)-MC(Nc,2))^2)^0.5; P:=P-T; R:=A/P; V:=Q/A; //Graficando el poligono Cx:=250/10; Cy:=Cx; //Compensando las coordenasa FOR I FROM 1 TO Nc DO MCC(I,1):=MCC(I,1)*Cx; MCC(I,2):=MCC(I,2)*Cy; END; MSGBOX("Cálculo realizado con éxito!!!"); END; //Resultados finales IF MENU==4 THEN PRINT; PRINT("---------------------"); PRINT("RESULTADOS"); PRINT("---------------------"); PRINT("El caudal="+ROUND(Q,3)); PRINT("Area="+ROUND(A,3)); PRINT("Perimetro="+ROUND(P,3)); PRINT("Espejo de agua="+ROUND(T,3)); PRINT("Radio Hidraúlico="+ROUND(R,3)); PRINT("Velocidad="+ROUND(V,3)); WAIT(-1); END; //GRAFICA IF MENU==5 THEN RECT; RECT_P(0,0,320,240,RGB(0,0,0)); FOR I FROM 1 TO 240 DO LINE_P(0,I,315,I,RGB(0,I+2,I)); END; LINE_P(5,5,315,5,RGB(255,255,0)); LINE_P(5,235,315,235,RGB(255,255,0)); FOR I FROM 1 TO 2 DO TEXTOUT_P("GRÁFICA DE LA SECCIÓN DEL CANAL",50+I,15+I,2,RGB(0,128,255)); END ; TEXTOUT_P("GRÁFICA DE LA SECCIÓN DEL CANAL",53,18,2,RGB(255,255,255)); //Eje Y LINE_P(40,70,40,195,RGB(255,255,0)); //Eje X LINE_P(40,195,290,195,RGB(255,255,0)); //Lineas horizonatales y textos horizontales FOR I FROM 0 TO 4 DO LINE_P(40,70+25*I,290,70+25*I,RGB(128,128,128)); TEXTOUT_P(I,30,70+25*I,1,RGB(0,128,192)); END; //Lineas Verticales FOR I FROM 1 TO 10 DO

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 LINE_P(40+25*I,70,40+25*I,195,RGB(128,128,128)); TEXTOUT_P(I,35+25*I,205,1,RGB(0,128,192)); END; //Grafica de la seccion FOR I FROM 1 TO Nc-1 DO LINE_P(40+MCC(I,1), 70+MCC(I,2), 40+MCC(I+1,1), 70+MCC(I+1,2), RGB(0,112,166)); END; //Grafica de textos FOR I FROM 1 TO Nc DO TEXTOUT_P(I,32+MCC(I,1), 70+MCC(I,2),1, RGB(0,255,255)); ARC_P(40+MCC(I,1), 70+MCC(I,2),1,RGB(255,0,0)); END; TEXTOUT_P("SECCION A-A",130,218,2,RGB(255,255,0)); TEXTOUT_P("Profunidad[m]",5,50,1,RGB(255,255,255)); TEXTOUT_P("Distancia[m]",260,215,1,RGB(255,255,255)); WAIT(-1); END; UNTIL MENU==6; END;

10. Código fuente clase N°10:

//CREACION DE FUNCIONES Marcoh(Y) BEGIN LINE_P(5,Y,315,Y,RGB(0,255,255)); END; Marcov(X) BEGIN LINE_P(X,5,X,235,RGB(0,255,255)); END; Campoh(Y) BEGIN LINE_P(90,Y,230,Y,RGB(0,255,255)); END; Campov(X) BEGIN LINE_P(X,60,X,200,RGB(0,255,255)); END; Flechax(X,Y,j) BEGIN FOR I FROM 0 TO 4 DO LINE_P(X-j*I,Y-j*I,X-j*I,Y+j*I,RGB(255,255,0)); END; END; Flechay(X,Y,j) BEGIN FOR I FROM 0 TO 4 DO LINE_P(X+j*I,Y-j*I,X-j*I,Y-j*I,RGB(255,255,0)); END; END; EXPORT CLASE_N°10_() BEGIN //Declaracion de variables LOCAL MENU,F; LOCAL Lx,Ly,fi,Lxn,Lyn,fin; LOCAL Cx,Cy,Lxc,Lyc; REPEAT CHOOSE(MENU,"GRAFICA DE FUNCIONES",{"DATOS INICIALES","CALCULAR","GRÁFICA","TABULACIONES","SALIR"}); //Datos iniciales IF MENU==1 THEN INPUT({ {F,[8],{40,50,3}}}, "DATOS INICIALES", {"Función="}); END; IF MENU==2 THEN

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 //Evaluacion de la función para positivos Lx:={0}; Ly:={0}; FOR I FROM 1 TO 20 DO X:=I; fi:=EVAL(F); Lx(I):=X; Ly(I):=fi; END; //Copia de Listas Lxc:=ROUND(Lx,3); Lyc:=ROUND(Ly,3); //Evaluacion de la funcion para negativos Lxn:={0}; Lyn:={0}; FOR I FROM 1 TO 20 DO X:=-I; fin:=EVAL(F); Lxn(I):=X; Lyn(I):=fin; END; //Compensación de las coordendas Cx:=70/MAX(Lx); Cy:=70/MAX(Ly); //Valores compensados Lx:=Lx*Cx; Ly:=Ly*Cy; Lxn:=Lxn*Cx; Lyn:=Lyn*Cy; MSGBOX("Cálculo realizado con éxito!!!"); END; //Grafica de la funcion IF MENU==3 THEN //Creacion del rectangulo RECT; RECT_P(0,0,320,240,RGB(0,0,0)); //Texto del titulo FOR I FROM 1 TO 3 DO TEXTOUT_P("GRÁFICA DE LA FUNCIÓN",80+I,20+I,2,RGB(255,255,255)); END; TEXTOUT_P("GRÁFICA DE LA FUNCIÓN",83,23,2,RGB(192,192,192)); //Creacion de los marcos Marcoh(5); Marcoh(235); Marcov(5); Marcov(315); //Creando el campo Campoh(60); Campoh(200); Campov(90); Campov(230); //Creando ejes LINE_P(90,130,230,130,RGB(255,255,0)); LINE_P(160,60,160,200,RGB(255,255,0)); //Graficando la flecha Flechax(230,130,1); Flechax(90,130,-1); Flechay(160,200,1); Flechay(160,60,-1); FOR I FROM 1 TO 19 DO LINE_P(160+Lx(I),130-Ly(I),160+Lx(I+1),130-Ly(I+1),RGB(255,255,255)); LINE_P(160+Lxn(I),130-Lyn(I),160+Lxn(I+1),130-Lyn(I+1),RGB(255,255,255)); END; //Textos TEXTOUT_P("La función="+F,8,55,1,RGB(0,162,232)); TEXTOUT_P("Eje X",45,125,1,RGB(255,0,0));

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

“TALLER DE PROGRAMACIÓN ONNLINE EN LA CALCULADORA HP PRIME”

Expositor: Gabriel David Quispe Sanes Celular: 982925212 TEXTOUT_P("Eje Y",145,65,1,RGB(255,0,0)); WAIT(-1); END; //Tabulaciones IF MENU==4 THEN //Creacion del rectangulo RECT; RECT_P(0,0,320,240,RGB(0,0,0)); //Texto del titulo FOR I FROM 1 TO 3 DO TEXTOUT_P("TABULACIÓN DE LA FUNCION",70+I,10+I,2,RGB(255,255,255)); END; TEXTOUT_P("TABULACIÓN DE LA FUNCION",73,13,2,RGB(192,192,192)); //Creacion de los marcos Marcoh(5); Marcoh(235); Marcov(5); Marcov(315); //Color de fondo del titulo FOR I FROM 1 TO 15 DO LINE_P(40,35+I,160,35+I,RGB(128,255,255)) END; //Lineas horizontales FOR I FROM 1 TO 12 DO LINE_P(40,20+15*I,160,20+15*I,RGB(192,192,192)) END; //Lineas verticales LINE_P(40,35,40,200,RGB(192,192,192)); LINE_P(160,35,160,200,RGB(192,192,192)); LINE_P(100,35,100,200,RGB(192,192,192)); //Colocacndo titulos TEXTOUT_P("X",65,39,1,RGB(255,0,0)); TEXTOUT_P("Y",125,39,1,RGB(255,0,0)); //Colocando los valores FOR I FROM 1 TO 10 DO TEXTOUT_P(Lxc(I),65,39+15*I,1,RGB(255,255,0)); TEXTOUT_P(Lyc(I),115,39+15*I,1,RGB(255,255,0)); END; WAIT(-1); END; UNTIL MENU==5; END;

GABRIEL DAVID QUISPE SANES ESTUDIANTE INGENIERÍA CIVIL-UNH

GMAIL: [email protected]

Related Documents


More Documents from "YMOCH"