programas” vidal “estructura de programas”cvalle/caplicada/capitulo2.pdf · a todas las...
TRANSCRIPT
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
“Estructura de Programas”
Carlos Valle [email protected]
Departamento de Informatica -Universidad Tecnica Federico Santa Marıa
Rancagua, Agosto 2009
1 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Temario
1 Introduccion
2 Script
3 Funciones
4 Graficos
2 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Temario
1 Introduccion
2 Script
3 Funciones
4 Graficos
3 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Introduccion
Para resolver problemas simples en Matlab, basta ingresarcomandos en la ventana de comandos.
Si el numero de comandos es muy grande esto no resultapractico principalmente por la posibilidad de cometer errores
4 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Temario
1 Introduccion
2 Script
3 Funciones
4 Graficos
5 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Script
Un script (guion), es una secuencia de comandos escritos esun archivo.
Un script se escribe con un editor de textos.
En MATLAB un script se denomina M-file.
Un M-file es un archivo que tiene extension .m. Por ejemplo:ejemplo.m
Para utilizar el editor de textos de Matlab, desde el menu Fileseleccionar New, M-file.
El script se puede correr desde el editor seleccionando RunM-file, o escribiendo el nombre del script en la ventana decomandos
6 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Ejemplo
% ecuacion: script para ecuacion segundo gradoformat compact;a=1b=5c=6x = -b/(2*a);y = sqrt(bˆ2-4*a*c)/(2*a);s1 = x+ys2 = x-y
7 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Ejemplo
Para ejecutar el script M-file, escribir el nombre del archivo
� ecuaciona =1
b =5
c =436
s1 =-2
s2 =-3
8 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Ejemplo: Comentarios
% ecuacion: % permite agregar comentario
format compact: Elimina lıneas extras en salida
a=1, b=5, c=6: Fijar valores de a, b, c, mostrara resultados
x & y: Punto y coma al final del comando no muestraresultados
s1, s2: Calcula y muestra raıces
9 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Observaciones
Todos los comandos dentro de un script M-file tienen accesoa todas las variables del espacio de trabajo (Workspace)
Todas las variables creadas en un M-file forman parte delespacio de trabajo
10 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Ingreso de datos
En el ejemplo anterior, ¿Que pasa si queremos hacer elcalculo con otros valores de a, b y c?
Una alternativa es editar nuevamente el archivo y cambiar losvalores de a, b y c. ¿Hay una alternativa mas facil?
Veremos como se pueden ingresar datos
c=input(’ingrese el coeficiente a: ’);
Al ingresar el dato desde el teclado, el valor ingresado quedaen la variable c.
Observar que al terminar con “;” el valor que se ingresa no semuestra al terminar el comando
Si se quieren ingresar cadenas de caracteres se debecolocar la cadena entre ’ ’, o sino, usar c=input(’ingresecadena: ’,’s’);. ’s’ transforma lo ingresado en el teclado acadena de caracteres.
11 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Funciones de Entrada y Salida
A continuacion se muestran funciones utiles:
disp(ans): Muestra resultados sin identificar nombre devariables
echo [on|off]: Permite mostrar o no mostrar nombres decomandos
input(’prompt’): Acepta entradas hasta oprimir Enter
pause: Pausa hasta que usuario oprime cualquier tecla
pause(n):Pausa por n segundos
waitforbuttonpress: Pausa hasta oprimir cualquier tecla uoprimir tecla del mouse
12 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Nueva version de la ecuacion
% ecuacion: Nuevo script para ecuacion de segundo gradoformat compact;% prompt para coeficientes de entradaa = input(’Ingrese coeficiente a: ’);b = input(’Ingrese coeficiente b: ’);c = input(’Ingrese coeficiente c: ’);disp(’ ’)% calculo de valores intermedios x & yx = -b/(2*a);y = sqrt(bˆ2-4*a*c)/(2*a);% calcular y mostrar raicess1 = x+y;disp(’Valor de la primera raiz: ’),disp(s1);s2 = x-y;disp(’Valor de la segunda raiz: ’),disp(s2);
13 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Temario
1 Introduccion
2 Script
3 Funciones
4 Graficos
14 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Funciones
Un archivo que contiene codigo MATLAB se denomina M-file.Las M-files pueden ser scripts que ejecutan una serie deinstrucciones MATLAB, o funciones que acepten argumentosy generen valores de salida.
En ambos casos la extension del archivo debe ser .m
Pueden aceptar argumentos de entrada y devolverargumentos de salida.
Las variables internas de una funcion por defecto son localesa la funcion.
Las funciones sirven para extender las funcionalidades deMATLAB adaptandola a nuestros propios requerimientos.
15 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Ejemplo
1. function f=suma(a,b)2. % SUMA Suma3. % SUMA(a,b) retorna la suma de a y b4. % En otras palabras, SUMA(A,B) es A+B5. f=a+b;
La funcion anterior tiene varios elementos comunes a todaslas funciones
1 Una lınea de definicion2 La lınea H1: help13 Texto de ayuda4 Texto de ayuda5 Cuerpo de la funcion o codigo
16 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Funciones: Ejemplo
Construir funciones para convertir grados Fahrenheit engrados Celsius
TC =59(TF−32)
17 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Solucion
function celsius=far_to_cel(f)%FAR_TO_CEL Fahrenheit a Celsius%FAR_TO_CEL(t) retorna el equivalente en%faherenheit de t en ◦Ccelsius=5/9*(f-32);
18 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Temario
1 Introduccion
2 Script
3 Funciones
4 Graficos
19 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Graficos
MATLAB dispone de funciones que permiten hacer graficos2-D
La funcion basica es plot()
El elemento basico es el vector.
Se pueden incluir textos, grillas y cambiar colores de lıneas.
help graph2d
20 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Graficos: Ejemplo
>> x=[1 3 2 4 5 3]
x =
1 3 2 4 5 3
>> plot(x)>>
21 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Graficos: Ejemplo 2
%Script de ejemplo para graficarx=[-pi:0.1:pi]y=sin(x)plot(x,y)title(’Grafico de y=sin(x)’)xlabel(’x en radianes’)ylabel(’eje y’)
22 / 23
“Estructura deProgramas”
Carlos ValleVidal
Introduccion
Script
Funciones
Graficos
Consultas y Comentarios
23 / 23