ueen versi on 8. 00 Oper aci ones vari adas El Obj eto Jep Est e obj et o se encar gar de ext ender l a f unci onabili dad del JEP. Obj _Jep es un obj et o ext er no que se carga con el co mando l oadobj. Ej e mpl o de creaci ón: l oadobj Obj _Jep j Para ej ecut ar t odas l as posi bili dades sol o es necesari o crear un obj eto Obj _Jep. Las si gui ent es operaciones est án di sponi bl es con el obj et o Obj _Jep : si mplify: Si mplifica una seri e de nú mer os a sus fact ores pri mos entre si. fsi mplify: Ret or na l a li st a de di vi sores comunes de una list a de nú mer os ent eros. sfact or: Ret or na l os fact ores pri mos de un numer o en f or mat o stri ng. reduce: Si mplifica l a fracci ón a/ b. ispri me: Ret or na 1 si el numer o es pri mo, de los contrari o 0. pri mes: Ret or na l os primer os n nú mer os pri mos. pri met o: Ret or na l os nú mer os pri mos hast a un nu mer o dado. addf un: Agrega un conj unt o de f unci ones especi ali zadas a JEP pus h: Al macena en l a pil a de Queen un obj eto J EP. pop: Saca de l a pil a de Queen un obj et o JEP. spop: Saca un obj et o j ep de l a pil a dada. speek: To ma referencia de un obj et o J EP de la pil a dad. spus h: Met e un obj et o J EP de l a pil a dada. xf un: Crea una f unci ón J EP que t o ma pará metros y ret or na un resultado. r mf un: Eli mi na una f unci ón del JEP. renf un: Reno mbr e una f unci ón en el JEP. versi on: Ret or na l a versi ón del obj et o Obj _Jep. mdat e: Ret or na l a ultima f echa de modificación. aut hor: Ret or na i nf ormaci ón sobre el aut or del obj et o. about: Ret or na i nf or maci ón acerca del obj et o. si mp: Si mplifica una expresi ón mat e máti ca. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 En l os ej e mpl os a cont i nuaci ón se as ume que el obj et o Obj _Jep ya est a creado en l a vari abl e j. Oper aci ón si mplify. Est a operaci ón f act ori za una list a de nú mer os ent eros y ret or na un arregl o con l a lista de númer os ya reduci dos (si es posi ble). Si nt axi s: j si mplify array nu m1 nu m2 ... Donde : 1. 2. 3. 4. j : es el no mbre del obj et o Obj _Jep. si mplify: El no mbr e de l a operaci ón. array: El no mbre para el arregl o que cont endrá l a lista de nú mer os. nu m1 nu m2 ....: La lista de nú mer os a si mplificar. Deben ser al me nos 2. Ej e mpl o: j si mplify ar 200 50 150 175 strl n Los numer os si mplificados (200 50 150 175) = (~ar~) Not e l a expresi ón ~ar~, es macr o s ustit uci ón nu méri ca y ret or na l a li st a de nú mer os en el arregl o. El ej e mpl o ant eri or present a: Los nu mer os si mplificados (200 50 150 175) = (8, 2, 6, 7) Oper aci ón fsi mplify. Ret or na l a lista de di visores co munes de una lista de nú mer os ent eros. La mul ti plicaci ón entre l os f act ores ret or nados es el máxi mo f act or co mún ent re l a lista de númer os. Si nt axi s: j fsi mplify array nu m1 nu m2 ... Donde : 1. j : es el no mbre del obj et o Obj _Jep. 2. fsi mplify: El no mbr e de l a operaci ón. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 3. array: El no mbre para el arregl o que cont endrá l a lista de nú mer os. 4. nu m1 nu m2 ....: La lista de nú mer os a si mplificar. Deben ser al me nos 2. Ej e mpl o: j fsi mplify ar 12 6 30 strl n Los Di visores de (12, 6, 30) son (~ar~) n=ar*" di m" f=1 for i 1 i<=n 1; f*=ar*i strl n El máxi mo fact or co mún entre (12, 6 y 30) es ~f~ Not e l a expresi ón ~ar~, es macr o s ustit uci ón nu méri ca y ret or na l a li st a de nú mer os en el arregl o. El ej e mpl o ant eri or present a: Los Di visores de (12, 6, 30) son (2, 3) El máxi mo fact or co mún entre (12, 6 y 30) es 6 Oper aci ón ispri me. Est a operaci ón det er mi na si un nu mer o es primo. Si nt axi s: j ispri me nu m var name Donde : 1. j : es el no mbre del obj et o Obj _Jep. 2. ispri me: El no mbr e de l a operaci ón. 3. nu m: Los nú mer os a simpl ificar. 4. var na me: No mbr e de l a vari abl e que conti ene el result ado. Si el result ado es 1 nu m es pri mo. Si no se es pecifica l a el no mbr e de l a vari abl e, el result ado se present a en l a barra de est ado. Ej e mpl o: for i 1 i<=10 1 do num=i nt(ranl( 1, 100)) j ispri me nu m op if op==0 do Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 strl n El ~nu m~ es nu mer o COMP UESTO else strl n El ~nu m~ es nu mer o PRI MO endif endf or En l a ej ecuci ón del progra ma ant eri or present o: El 98 es numer o COMPUESTO El 44 es numer o COMPUESTO El 94 es numer o COMPUESTO El 10 es numer o COMPUESTO El 59 es numer o PRI MO El 52 es numer o COMPUESTO El 19 es numer o PRI MO El 79 es numer o PRI MO El 41 es numer o PRI MO El 84 es numer o COMPUESTO Oper aci ón pri mes. Est a operaci ón ret or na l os pri mer os n númer os pri mos en un arregl o. No se i ncl uye el nume ro pri mo 1. Si nt axi s: j pri mes n array Donde : 1. j : es el no mbre del obj et o Obj _Jep. 2. pri mes: El no mbr e de la operaci ón. 3. n: El l a canti dad de númer os pri mos a extraer. 4. array: No mbr e de l a vari abl e que cont endrá el arregl o. Ej e mpl o: j pri mes 10 ar strl n Los pri mer os 10 nu mer os pri mos son: ~ar~ El ej e mpl o ant eri or present arí a: Los pri mer os 10 nume ros pri mos son: 2, 3, 5, 7,11, 13, 17, 19, 23, 29 Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 Oper aci ón pri met o. Est a operaci ón ret or na l os nú mer os pri mos me nores que n en un arregl o. El nu mer o pri mo 1 no es i ncl ui do. Si nt axi s: j pri met o n array var na me Donde : 1. j : es el no mbre del obj et o Obj _Jep. 2. pri met o: El no mbr e de la operaci ón. 3. array: El no mbre para el arregl o. 5. var na me: Es el no mbre para una vari abl e nu méri ca que cont endr á el nu mer o de el e ment os en el arregl o. Est e parámet r o es opci onal. Ej e mpl o: j pri met o 50 ar strl n Los pri mos menores que 50 son: ~ar~ El ej e mpl o ant eri or present a: Los pri mos menores que 50 son: 2, 3, 5, 7, 11, 13,17, 19, 23, 29, 31, 37, 41, 43,47 Oper aci ón addf un. Est e operaci ón agrega al J EP una li brerí a ( conj unt o de f unci ones) para el trat a mi ent o de obj et os es pecíficos o f unci ones mas especi ali zadas. Los conj unt os de f unci ones si guen creci endo y s u us o constit uye un t e ma ext enso que i ncl uye al gunas defi ni ci ones mat e máti cas. Por est a r azón, se exponen en otra secci ón el det all e y usos. La car ga de f unci ones t a mben es posi bl e al mo me nt o de crear el obj et o Obj _Jep, poni endo después del no mbr e del obj et o l os ti pos de f unci ones que se desean cargar, separadas por espaci o. Ej e mpl o de l a carga de f unci ones al mo me nt o de l a creaci ón del obj et o: l oadobj Obj _Jep j expressi on stri ng En el ej e mpl o ant eri or se cargan dos li brerí as (expressi on y stri ng) Si nt axi s de l a operaci ón addf un: Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 j addf un t ype Donde : 1. j : es el no mbre del obj et o Obj _Jep. 2. addf un: El no mbre de l a operaci ón. 3. t ype: El gr upo especifico de f unci ones. Puede ser: mat ri x( para matri ces), vect or( para vect ores) or mi sc( para miscel áneos). Ej e mpl o: j addf un matri x list El ej e mpl o mostrarí a l a list a de t odas l as f unci ones en l a vent ana de vari abl es en me mori a. Oper aci ón pus h. Est a operaci ón i nsert a c ual qui era de l os obj et os J EP en l a pil a de Queen. De est a manera si se elimi nan con el co mando cl svar , se pueden recuperar de nuevo con el co mando pop. Si nt axi s: j pus h obj 1 obj 2 ... Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. pus h: El no mbr e de l a operaci ón. 3. obj 1 obj 2 ...: El no mbr e de un o mas obj et os JEP. El ej e mpl o se co mbi na con el si gui ent e co mando. Oper aci ón pop. Est a operaci ón recobra uno o mas obj et os JEP al macenado en l a pil a de Queen. Not a: El us uari o debe saber en que or den se al macena l os obj t os. El pri mer o en entrar es el ulti mo en salir. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 La pil a de Queen puede cont ener cual qui er ti po de obj et o. Si el obj et o en l a part e superrí o de l a pila no es un obj et o JEP, se l anzara un error. Se recal ca que l os obj et os que se met en pri mer o son l os últimos en salir ( operaci ón de pil a LIFO). Si nt axi s: j pop obj 1 obj 2 ... Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. pop: El no mbr e de l a operaci ón. 3. obj 1 obj 2 ...: El no mbr e de un o mas obj et os JEP. Ej e mpl o crea un vect or a una mat ri x B, l uego present a l a list a de obj et os, vea cui dadosa ment e l a lista para l ocali zar el vect or b y l a mat ri z B. Luego se eli mi nan l os obj et os creados. Se present a de nuevo l a list a para que vea que no exi sten tant o a co mo B. a=<- 1, 2, 3> B={[-1, 0, 1][3,-2, 9][1,-1, 0]} strl n Creando a=~a~ strl n Creando B=~B~ j pus h a B clsvar a clsvar B strl n Los obj et os a y B fuer on eli mi nados Co mo pudo ver, no exi st en l os obj et os defini dos. Así que l os recuper a mos de nuevo. Ej e mpl o de recuperaci ón ( not e que co mo B se i ntroduj o de ulti mo, así, se recupera pri mer o). j pop B j pop a strl n a=~a~ strl n B=~B~ El ej e mpl o ant eri or i mpri mirá a=<- 1, 2, 3> B=[- 1, 0, 1][3,-2, 9][1,-1, 0] Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 Oper aci ones spus h, spop y speek. Est a operaci ones al macenan u obti enen obj et os J ep des de una pil a ( Type_St ack) dada. Not a: El us uari o debe saber en que or den se al macena l os obj et os. El pri mer o en entrar es el ulti mo en salir. Si el obj et o en l a parte s uperrí o de l a pil a no es un obj et o J EP, se l anzara un error. spus h: Met e uno o mas obj et os en l a pil a dada. spop: Saca uno o mas obj et os de l a pil a dada. speek: To ma una ref erenci a del obj et o que se enc uentra en ci ma de l a pil a, no l o eli mi na de l a pil a. Se recal ca que l os obj et os que se met en pri mer o son l os últimos en salir ( operaci ón de pil a LIFO). Si nt axi s: j spus h st obj 1 obj 2 ... Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. spus h: El no mbr e de l a operaci ón. 3. st: El no mbr e de l a pil a 4. obj 1 obj 2 ...: El no mbr e de un o mas obj et os JEP. Si nt axi s: j spop st obj 1 obj 2 ... Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. spop: El no mbr e de l a operaci ón. 3. st: El no mbr e de l a pil a 4. obj 1 obj 2 ...: El no mbr e de un o mas obj et os JEP. Si nt axi s: j speek st obj 1 Donde : Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 1. 2. 3. 4. j : Es el no mbr e del obj et o Obj _Jep. speek: El no mbr e de l a operaci ón. st: El no mbr e de l a pil a obj 1: El no mbr e de un obj et o JEP. Ej e mpl o: l oadobj Obj _Jep p l oadt ype Type_St ack Type_St ack creat e st a=10 v=<1, 2,-3> m={ [ 1, 2][0, 2]} p spus h st a v m p speek st M strl n speek de M=~ M~ p spop st M V A strl n spop de A=~ A~, V=~ V~, M=~ M~ El ej e mpl o ant eri or i mpri mirá speek de M=[ 1, 2][0, 2] spop de A=10, V=<1, 2, -3>, M=[ 1, 2][0, 2] Oper aci ón xf un. Est a operaci ón crea una f unci ón dentro del JEP, l a cual puede t o mar c ual qui er canti dad de pará met ros y ret or na el result ado de l a eval uaci ón de una expresi ón. Si el no mbre de l a f unci ón ya exi ste, se l anzara un error. Si nt axi s: j xf un f na me, para_1, para_2,..., para_n, expressi on Donde : Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 1. 2. 3. 4. 5. j : Es el no mbr e del obj et o Obj _Jep. xf un: El no mbr e de l a operaci ón. f na me: El no mbr e de la f unci ón. para_1, para_2,..., para_n: Son no mbr es de l os pará metros de l a f unción. expressi on Es l a expresi ón a eval uar en l a cual se i nvol ucran l os pará met ros. Ej e mpl o: Las f unci ones creadas con est a operaci ón f unci onan exact ame nt e i gual que c ual qui er otra f unci ón del J EP. Por l o t ant o l os pará met ros pueden ser de cual qui er ti po. Sol o debe de t enerse c ui dado que l as operaci ones reali zadas con l os obj et os sean vali das. El val or ret or nado est a det er mi nado por l os operandos y l os ti pos de obj et os usados en l os pará met ros en l a expresi ón. fx cls l oadobj Obj _Jep j j xf un myf un, a, b, c, a*( b-c)/(c-a) r= myf un( 1, 2, 3) strl n el result ado ~r~ El result ado: el result ado -0. 5 Oper aci ón r mf un. Est a operaci ón eli mi na una f unci ón del J EP. Post eri or a est a oper aci ón l a operaci ón eli mi nada es irrecuperabl e. Si nt axi s: j r mf un na me1 na me2, .... Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. r mf un: El no mbr e de la operaci ón. 3. na me1, na me2, ...: Son no mbr es de l as f unci ones a eli mi nar. Ej e mpl o: fx cls l oadobj Obj _Jep j j xf un myf un, a, b, c, a*( b-c)/(c-a) r= myf un( 1, 2, 3) Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 strl n el result ado ~r~ j r mf un myf un // Error la funci ón ya no exist e r2= myf un( 1, 2, 3) Oper aci ón renf un. Est a operaci ón reno mbra una f unci ón del JEP. Si nt axi s: j renf un na me ne w_na me Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. renf un: El no mbr e de la operaci ón. 3. na me: Es el no mbre de la f unci ón 4. ne w) na me: Es el nuevo no mbre de l a f unci ón. Ej e mpl o: fx cls l oadobj Obj _Jep j j renf un cos coseno coseno( pi/ 3) La sali da seri a: anw=coseno( pi/ 3) =0. 5 Oper aci ón versi ón. Est a operaci ón ret or na l a versi ón del obj et o Obj _Jep. Si nt axi s: j versi on var na me Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. versi on: El no mbr e de l a operaci ón. 3. var na me: El no mbr e de l a vari abl e nu méri ca que t o mar a l a versi ón. Si no se especifica se muestra en l a barra de est ado. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 Ej e mpl o: j versi on ver strl n Obj _Jep es la versi on ~ver~ Sali da: Obj _Jep es la versi on 1. 1 Oper aci ón mdat e. Est a operaci ón ret or na l a ulti ma fecha de act uali zaci ón del obj et o Obj_Jep. Si nt axi s: j mdat e var na me Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. mdat e: El no mbre de la operaci ón. 3. var na me: El no mbr e de l a vari abl e que t o mara l a f echa co mo un st ri ng . Si no se especifica se muestra en l a barra de estado. Ej e mpl o: j mdat e fecha strl n La ulti ma fecha de act uali zaci on del Obj _Jep es ~fecha~ Sali da: La ulti ma fecha de actuali zaci on del Obj _Jep es June 2005 Oper aci ón aut hor. Est a operaci ón ret or na i nf or maci ón sobre el aut or del obj et o Obj _Jep. Si nt axi s: j aut hor var na me Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. aut hor: El no mbr e de la operaci ón. 3. var na me: El no mbr e de l a vari abl e que t o mara l a i nf or maci ón co mo un stri ng . Si no se especifica se muestra en l a barra de est ado. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 Ej e mpl o: j aut hor aut or strl n El aut or de Obj _Jep es : ~ aut or ~ Sali da: El aut or de Obj _Jep es : Reynal do Aliri o Ra mos (aliri o_r_ra mos @yahoo. es) Oper aci ón about. Est a operaci ón ret or na i nf or maci ón general sobre el obj et o Obj _Jep. Si nt axi s: j about var na me Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. about: El no mbr e de l a operaci ón. 3. var na me: El no mbr e de l a vari abl e que t o mara l a i nf or maci ón co mo un stri ng . Si no se especifica se muestra en l a barra de est ado. Ej e mpl o: j about i nfo strl n ~i nf o~ Sali da: Obj _Jep: Versi on: 2. 1, Aut hor: Reynal do Aliri o Ra mos (aliri o_r_ra mos @yahoo. es), Dat e: June 2005 Oper aci ón si mp Est a operaci ón si mplifica una expresi ón mat e máti ca que cont enga c ual qui era de l as f unci ones mat emáti cas est ándar (si n, cos, t an, l n, exp, et c). Vea t a mbi én l a f unci ón si mp. Si nt axi s: j si mp var_dat a expressi on vari abl e1 vari able2 ..... vari abl en Donde : 1. j : Es el no mbr e del obj et o Obj _Jep. 2. si mp: El no mbr e de l a operaci ón. 3. var_dat a: Vari abl e para capt urar el result ado. 4. expressi on: La expresión a si mplificar. Aut or: Reynal do Aliri o Ra mos Ener o de 2008 ueen versi on 8. 00 5. vari abl e1, vari abl e2, ...: Son l as vari abl es o símbol os usados dent ro de l a expresi ón. Ej e mpl o: fx cls l oadobj Obj _Jep j s_exp="( 1-si n( 2*t))^2-cos(t)+5- 3*(si n( 2*t)+cos(t))-1" j si mp dat o ~s_exp~ t strl n ~dat o~ Sali da: Est a es l a si mpl ificaci ón. si n( 2*t)^2- 5*si n( 2*t)+5-4*cos(t) Not a: Para probar que l as expresi ones son equi val ent es, use el si gui ent e pr ogra ma. Las eval uaci ones debe ser una i gual dad. t=- 1/ 7 n1=( 1-si n( 2*t))^2-cos(t)+5- 3*(si n( 2*t)+cos(t))-1 n2=si n( 2*t)^2- 5*si n( 2*t)+5- 4*cos(t) strl n ~n1~=~n2~ Ot r as Caract erísticas: Las f unci ones J EP : Hay un gran conj unt o de f unci ones que exti enden l as operaci ones en l os obj et os. No est án di sponi bl es por def ect o, per o pueden car garse con el co mando addf un del obj et o Obj _Jep, o bi en con l a f unci on addf un que es una f unci on precragada. Al gunos de l os obj et o J EP ti enen s u anál ogo grafi co ( Shape_ Matri z, Shape_ Vect or (2 D- 3 D), Shape_Pol yno mi al). Un obj et o J EP pueden ser pasados co mo pará met ros en f unci ones de us uari o, pero se debe especificar co mo pará metro de ti po nu meric. Todos l os ti pos J EP en me mori a pueden l istarse (cons ult arse) con el co mando list. Aut or: Reynal do Aliri o Ra mos Ener o de 2008