NÚMEROS COMPLEJOS
Concepto y Generalidades
Los números complejos de todos bien conocidos, también
están soportados por Queen. En entorno para operar los números complejos es muy flexible, pueden formar parte de
cualquier operación con variables reales existentes, o las variables reales
formar parte de cualquier expresión u operación con complejos. Pero la única
forma de recuperar el resultado como complejo es a través de las operaciones de
la clase complex. Por el
momento pueda que esto suene confuso, pero en la practica es muy simple.
La clase complex cuenta con operaciones generales y operaciones especificas, estas
ultimas son ejecutadas desde un objeto o numero complejo ya creado. La
presentación de un numero complejo tiene dos modos de presentación, uno en
formato rectangular y otro en formato polar. Todas las operaciones se realizan
en formato rectangular, pero es posible convertir un numero complejo a su
formato polar.
Las componentes de un numero complejo (la real e
imaginaria) pueden ser expresadas tanto en forma decimal o fraccionaria. El
formato fraccionario es calculado a partir del periodo de la parte decimal, por
ello no siempre es posible obtener una fracción, aun cuando el numero sea
racional[1],
cuando esto sucede, el decimal racional (o irracional) es mostrado
completamente (con todos sus decimales).
Opresiones generales con
complejos
Una operación general es ejecutada a través del comando complex.
Todo numero complejo (y el general cualquier objeto Queen) muestra en la barra de estado su identificación si se
ejecuta únicamente su nombre como comando. La identificación de un numero
complejo en Queen, consta de su
tipo, nombre y sus componentes real e imaginaria.
Las operaciones generales son las siguientes:
1.
create: crea un
numero complejo usando sus componentes rectangulares.
2.
list: Presenta el
listado de todos los números complejos en memoria.
3.
cls: Elimina de la
memoria todos los números complejos existentes.
4.
delete: Elimina uno o
mas complejos de la memoria.
5.
fracon: Activa la
presentación de numérica de las componentes de los números complejos en formato
fraccionario.
6.
fracoff:
Desactiva el formato fraccionario.
7.
pol: Hace que las
componentes de los números complejos se muestren en formato polar.
8.
rec: Hace que las
componentes de los números complejos se muestren en formato rectangular.
9.
op: Realiza una
operación con complejos y retorna su valor como complejo.
El comando complex y
sus operaciones
Las lista de operaciones arriba
mencionadas son ejecutadas usando el comando complex. A continuación se presenta el detalle de cada operación:
Operación crearte
Crea un numero complejo a partir de sus componentes rectangulares.
Sintaxis: complex create name real ima
Descripción de los parámetros:
1.
complex: El comando complex
2.
create : La operación
3.
name: Nombre de la variable o numero complejo
4.
real: La componente
real
5.
ima: La componente
imaginaria (sin la i).
Ejemplo:
complex
create c 3 4
//
solo el nombre hace que el numero complejo de muestre en la barra de estado
c
Se muestra en el área de salida:
Complex: c=(r=3, i=4)
Nota: r es la parte real e i es la parte imaginaria. Este formato cambia cuando se establece la
presentación del resultado en polar (operación pol).
Operación list
Presenta los números
complejos actualmente en memoria.
Sintaxis: complex list
Descripción de los parámetros:
1.
complex: El comando complex
2.
list : La operación
Ejemplo:
complex
list
Operación delete
Elimina uno o mas numero complejos de la memoria.
Sintaxis: complex delete complexlist
Descripción de los parámetros:
1.
complex: El comando complex
2.
delete : La operación
3.
complexlist: Lista de los números complejos a borrar separados por
coma. Si el lugar de la lista se pasa un asterisco (*), todos los números
complejos son eliminados.
Ejemplo:
complex
delete c
Operación cls
Elimina todos los números complejos de la memoria.
Sintaxis: complex cls
Descripción de los parámetros:
1.
complex: El comando complex
2.
cls : La operación
Ejemplo:
complex
cls
Operaciones fracon, fracoff
Habilita y deshabilitan el modo de presentación en formato
fraccionario las componentes de todos los números complejos. Por defecto la
presentación es en formato decimal.
Sintaxis: complex fracon
Sintaxis: complex fracoff
Descripción de los parámetros:
1.
complex: El comando complex
2.
fracon, fraconff : Las operaciones
Ejemplo:
complex fracon
complex create a 8/5 -4/6
complex create
b -1/2 3/12
complex create
c 4/12 -3/6
complex list
complex fracoff
complex list
Operaciones pol,
rec
Establecen el modo de presentación de los números complejos a
polar y rectangular respectivamente. Por defecto se usa el modo rectangular.
Los cálculos se llevan a cabo en forma
rectangular sin importar el modo de presentación. Lo mismo para crear un
complejo, las componentes se esperan en formato rectangular.
En el modo polar z es el modulo del numero complejo y t es el ángulo que siempre se muestra en grados.
Sintaxis: complex pol
Sintaxis: complex rec
Descripción de los parámetros:
1.
complex: El comando complex
2.
pol, rec : Las operaciones
Ejemplo:
complex pol
complex create a 8/5 -4/6
complex create
b -1/2 3/12
complex create
c 4/12 -3/6
complex list
complex rec
complex list
Operación op
Realiza cualquier operación con números
complejos, el resultado es otro numero complejo, el cual puede ser almacenado
en una variable. Si no se almacena el resultado se muestra en la barra de
estado.
Sintaxis: complex op exp
variable
Descripción de los parámetros:
1.
complex: El comando complex
2.
op: La operación
3.
exp: Cualquier expresión matemática
valida usando complejos.
4.
variable: Nombre para almacenar el
resultado. Si no se especifica, el resultado se muestra en la barra de estado.
Ejemplo:
complex create a 8/5 -4/6
complex create
b -1/2 3/12
complex create
c 4/12 -3/6
complex op -3*((a+b)/c) d
d
El resultado:
Complex: d=(r=-4.78,i=-3.42)
Operaciones especificas
Estas
operaciones son ejecutadas teniendo como base un numero complejo ya creado.
Se le llama complejo fuente de la operación en que se
utiliza como base para ejecutar la operación, en otras palabras, es el que se
usa su nombre antes de la operación.
Lista de las operaciones especificas con las que cuenta los
número complejos:
Nota: El tipo de dato que retornan esta entre paréntesis.
Cuando el tipo de dato retornado por una operación especifica es un complex, el resultado actualiza al complejo fuente de la operación,
si este no es almacenado en una variable. Esto quiere decir que si no capturas
el resultado de una operación en una variable, el complejo fuente toma el valor
del resultado.
Cuando se ejecuta una operación especifica, el resultado
siempre se muestra en la barra de estado, independientemente de la captura del
resultado.
1.
op: Realiza
cualquier operación usando complejos ( numero complejo)
2.
get: Obtiene las componentes
rectangulares (numero real)
3.
set: Establece las componentes
rectangulares
4.
str: Retorna la representación como
string (string)
5.
z: Retorna el
modulo de la componente polar (numero real)
6.
tdeg: Retorna el
ángulo de la componente polar en grados (numero real)
7.
trad: Retorna el
ángulo de la componente polar en radianes
(numero real)
8.
acosh: Calcula el arco coseno
hiperbólico (numero complejo)
9.
asin: Calcula el arco seno hiperbólico
(numero complejo)
10.
asinh: Calcula el arco seno hiperbólico
(numero complejo)
11. atan: Calcula el arco tangente (numero complejo)
12. atanh: Calcula el arco tangente hiperbólico (numero complejo)
13. conj: Retorna el conjugado (numero complejo)
14. cos: Calcula el coseno (numero complejo)
15. cosec: Calcula la cosecante (numero complejo)
16. cosh: Calcula el coseno hiperbólico (numero complejo)
17. cot: Calcula la tangente (numero complejo)
18. exp:
Calcula e^complejo (numero complejo)
19. neg: Calcula el negativo (numero complejo)
20. sec: Calcula la secante (numero complejo)
21. sin: Calcula el seno (numero complejo)
22. sinh: Calcula el seno Hiperbólico (numero complejo)
23. sqrt: Calcula la raíz cuadrada (numero complejo)
24. tan: Calcula la tangente (numero complejo)
25. tanh: Calcula la tangente Hiperbólica (numero complejo)
Operación op
Calcula una operación usando complejos,
no es necesario que el complejo fuente de la operación se encuentre en la
expresión.
El resultado de la operación actualiza el
complejo fuente si no se captura en una variable.
El complejo fuente no forma parte
implícitamente de la expresión y no es necesario que forma parte de la misma.
Sintaxis: complexsource
op exp variable
Descripción de los parámetros:
1.
complexsource : El complejo fuente
2.
op: La operación
3.
exp: Cualquier expresión matemática
valida usando complejos.
4.
variable: Nombre para almacenar el
resultado. Si no se especifica, el resultado es establecido al complejo fuente.
Ejemplo:
complex create a 2 2
complex create
b 2 2
a op a*a
b op b*b c
complex list
El resultado mostrado en la ventan
es:
====================
COMPLEX
LIST
====================
No
Complex Name
------------------
1.- b:(r=2, i=2)
2.- a:(r=0, i=8)
3.- c:(r=0, i=8)
Nota que a tomo el resultado y b permaneció constante debido a que el resultado de b fue capturado en c.
Operación get
Captura las componentes rectangulares del
numero complejo.
Si se desea capturar las dos componentes
deben de especificarse dos variables, ya que si se especifica solo una
variable, solo se capturara la componente real.
Sintaxis: complexsource
get real imaginary
Descripción
de los parámetros:
1.
complexsource : El complejo fuente
2.
get: La operación
3.
real: Nombre de la variable para
almacenar la parte real.
4.
imaginary: Nombre para almacenar la parte
imaginaria. Es un parámetro opcional.
Ejemplo:
complex create a 1/2 -2
a get real ima
strln Real=~real~
strln Imaginario=~ima~
El resultado:
Real=0.5
Imaginario=-2
Operación set
Establece nuevas componentes
rectangulares (real, imaginaria) al numero complejo.
Sintaxis: complexsource
set real imaginary
Descripción
de los parámetros:
1.
complexsource : El complejo fuente
2.
set: La operación
3.
real: Variable numérica, o cualquier
expresión numérica valida.
4.
imaginary: Variable numérica, o cualquier
expresión numérica valida.
Ejemplo:
complex create a 0 0
a set -1 10
a
El resultado en la barra de estado:
Complex: a=(r=-1, i=10)
Operación str
Retorna la representación actual del
numero complejo en un string, si no se captura el resultado en una variable, se imprime en el área
de salida. El formato de la presentación, esta afectado por los comando complex
fracon-fracoff y complex
pol-rec.
Sintaxis: complexsource
str variable
Descripción
de los parámetros:
1.
complexsource : El complejo fuente
2.
str: La operación
3.
variable: Nombre de la variable en donde se
almacenara el resultado. Parámetro opcional, si no se especifica, se imprime el
resultado en el área de salida.
Ejemplo:
complex
create a 1 -2
complex
create b 9 2
a str
b str svar
strln Un
complejo --> 'svar'
El resultado en el área de salida:
complex a=(r=1, i=-2)
Un complejo --> complex b=(r=9, i=2)
Operación z
Retorna el modulo de la componente polar
del numero complejo.
Sintaxis: complexsource
z variable
Descripción
de los parámetros:
1.
complexsource : El complejo fuente
2.
z: La operación
3.
variable: Nombre de la variable en donde se
almacenara el resultado. Parámetro opcional, si no se especifica, el resultado
de muestra en la barra de estado.
Ejemplo:
complex
create a 1 -2
a z
El resultado en la barra de estado:
complex: Module(a)=2.24
Operacines tdeg,
trad
Retornan el ángulo en grados y en
radianes respectivamente de la componente polar del numero complejo.
El ángulo siempre
es dado en forma completa con respecto al eje polar.
Sintaxis: complexsource
tdeg variable
Sintaxis: complexsource
trad variable
Descripción
de los parámetros:
1.
complexsource : El complejo fuente
2.
tdeg,trad: Las operaciones
3.
variable: Nombre de la variable en donde se
almacenara el resultado. Parámetro opcional, si no se especifica, el resultado
de muestra en la barra de estado.
Ejemplo:
complex
create a 1 -2
a tdeg
El resultado en la barra de estado:
complex: Angle in degrees(a)=296.57
Todas la operaciones a continuación
tienen la misma sintaxis de ejecución, por lo tanto se presentara la sintaxis
que aplica a todas.
También todas la operaciones retornan
como resultado un numero complejo que puede ser capturado en una variable, si
no se captura, el complejo fuente toma
el resultado, que siempre es mostrado en la barra de estado.
Sintaxis: complexsource operacionx
variable
Descripción de los parámetros:
1.
complexsource : El complejo fuente
2.
operacionx: Una de las operaciones de la 8 a la
25 de las lista antes presentada.
3.
variable: Nombre de la variable en donde se
almacenara el resultado. Parámetro opcional, si no se especifica, el resultado
es tomado por el complejo fuente de la operación.
Ejemplo:
clsvar *
complex
create a 1 -2
a cos
El resultado en la barra de estado:
complex: acos(a)=(r=2.03, i=3.05)
El resultado en la venta de la
lista de complejos.
====================
COMPLEX
LIST
=====================
No Complex Name
------------------
1.- a:(r=2.03, i=3.05)
Como puede verse
a retomo el resultado.
[1] Esto sucede cuando en los decimales del numero, no se encuentra presente el periodo debido a que este supera en dígitos la preescisión (16 dígitos).