next up previous contents
Next: INTRODUCCION A I.D.L 7 Up: Ejercicios para programación en Previous: Objetivo 1:Hacer una gráfica

Objetivo 2:Comprender la idea de subrutina/función con argumentos y opciones.

1.
Para esto, escribiremos un primer programa cuyos pasos son:

(a)
Definir las variables. p.e. 5x51

(b)
Preguntar el nombre del archivo de datos.

(c)
leer los datos X.

(d)
Preguntar el número de la columna que se quiere representar.

(e)
Calcular la función COS +1. de la columna especificada, y grabar el resultado en otra variable Y.

(f)
Hacer la gráfica de la columna 0 de X frente a Y.
Grabe este programa en un archivo y ejecútelo. No se olvide que .RUN (.RNEW) compilan y ejecutan un programa principal. Entonces, sería:

.RNEW nombre_del_programa

2.
Cambie este programa en una subrutina. Para ello, ponga
. PRO nb_del_prog al principio y
. RETURN antes del END del programa.
Guarde este nuevo programa en otro archivo que tenga el mismo nombre que el programa.
En este caso, .RNEW (.RUN) solo compila sin ejecutar el programa. Para ejecutarlo, luego debe escribir el nombre del programa y pulsar la tecla INTRO (sin .RUN).
. .RNEW nb_de_la_sub para compilar y
. nb_de_la_sub para ejecutarla.

3.
Nuevo cambio: borre la parte que pide el número de columna y ponga el nombre de la variable detrás del nombre del programa separándolos con '','' (coma).
Grabe este nuevo programa en otro archivo y compílelo.
Para ejecutar este programa, recordemos que, ahora, número de columna es un argumento de la subrutina, esto significa que tenemos que especificarlo cuando ejecutamos el programa (subrutina). Se ejecuta con:

nb_de_la_sub,3

4.
Otra alternativa es utilizar la columna número 2 por defecto. Para eso, cambiamos la primera línea en:
. PRO nb_del_prog,col=col
e introducimos el comando:
. IF n_elements(col) eq 0 then col=2
Grabe este programa y compílelo. Para ejecutarlo, puede especificar la columna con:
. nb_del_prog,colo=3
o dejar IDL utilizar el defecto.

5.
Por último, escriba un programa con la función que calcula la COS +1. de un vector o matriz. Los pasos son:

(a)
Ponga
. FUNCTION nb_de_la_función,x
al principio del programa. X es el argumento.

(b)
Ponga
. RETURN,cos(x)
antes de END.
Grábelo en un archivo que tenga el mismo nombre que la función, pero con extensión .PRO.
Compile esta función. Para ejecutarla, puede llamarla desde la subrutina
. Y=nb_de_la_función(X(i,*))
en lugar de Y=cos(X(i,*)).


next up previous contents
Next: INTRODUCCION A I.D.L 7 Up: Ejercicios para programación en Previous: Objetivo 1:Hacer una gráfica

1999-03-07