Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Mathematica .
Introduccin.
Mathematica, adems de un programa de Clculo Simblico, es tambin un lenguaje de programacin, que
permite realizar condicionales, bucles, instrucciones lgicas y, en general, programas con propsitos
especficos. En esta prctica vamos a mostrar las principales herramientas de programacin.
Condicionales.
Comenzamos con las instrucciones de Mathematica para controlar el flujo de un programa, segn el
cumplimiento de determinadas condiciones.
La instruccin bsica es la del condicional simple, que se realiza con la instruccin:
Para este condicional simple, debemos proporcionar el test (que ha de ser una expresin de tipo lgico, es
decir, que al ser evaluada proporcione una salida del tipo True o False). Si esta condicin se cumple
(la salida es del tipo True), entonces se realiza la operacin escrita en la segunda posicin. Si la condicin no se cumple (la salida es de tipo False), se realiza la operacin descrita en la tercera posicin.
La condicin escrita en cuarto lugar es optativa, es decir, no es imprescindible para que el condicional se
realice. Proporciona una salida para el condicional cuando Mathematica no puede realizar el test indicado
en primer lugar. Adems, la salida puede ser un texto, un nmero, una funcin, etc. Podemos verlo en el
siguiente ejemplo:
EPSZ-USAL
Practica n 8
positivo@aD
If@a < 0, negativo, positivoD
Podemos ver como Mathematica no ha podido realizar la comparacin en este tercer caso, puesto que no
tenemos de momento ningn valor para "a". Podemos ampliar nuestro condicional con una tercera opcin,
que puede ser un mensaje de error, para cuando la comparacin no es posible.
Mathematica tambin puede realizar condicionales mltiples, en los que se verifican diferentes condiciones, y si resultan ciertas se realiza una determinada operacin para cada condicin.
2
EPSZ-USAL
Practica n 8
Mathematica tambin puede realizar condicionales mltiples, en los que se verifican diferentes condiciones, y si resultan ciertas se realiza una determinada operacin para cada condicin.
La sintaxis de esta expresin es la siguiente:
extremos@Cos@xD, PiD
mnimo
Este condicional simple o mltiple lo podremos combinar con otro tipo de instrucciones, como bucles, para
realizar diferentes programas.
Bucles
Veamos ahora otro tipo de instrucciones, como los bucles, que realizan una operacin mientras se verifique
una condicin, o mientras lo indique algn contador definido previamente.
La instruccin ms sencilla para realizar un proceso un nmero determinado de veces es la siguiente:
Do@proceso, 8veces<D
EPSZ-USAL
Practica n 8
Do@Print@"Hola"D, 83<D
Hola
Hola
Hola
Si queremos que ese proceso dependa de alguna variable, podemos incluir en esa instruccin el valor
inicial, el valor final y el paso en el que se va incrementando esa variable. En ese caso la instruccin toma
la forma:
While@condicin, procesoD
En esta instruccin, el proceso (o procesos) que se realizan se escriben al final, y se realizan mientras la
condicin indicada al principio proporcione un resultado True.
EPSZ-USAL
Practica n 8
Clear@iD
i = 1;
While@1 i^2 > 0.01, 8Print@iD, i = i + 2<D;
1
3
5
7
9
Otra instruccin para la realizacin de bucles dependiendo del cumplimiento de alguna condicin es la
siguiente:
Clear@iD
For@i = 1, 1 i^2 > 0.01, i = i + 2, Print@iDD
1
3
5
7
9
Veamos otro ejemplo: en este caso queremos imprimir los cuatro primeros mltiplos naturales de junto
con el valor de su coseno. Una posibilidad sera la siguiente:
EPSZ-USAL
Practica n 8
83 , -1<
84 , 1<
De una forma un poco ms elaborada, si queremos introducir texto y que tenga un determinado formato,
podemos utilizar la opcin TableForm:
si el angulo es
si el angulo es
su coseno es
si el angulo es
su coseno es
-1
si el angulo es
su coseno es
su coseno es
-1
EPSZ-USAL