computacion funciones en matlab
Post on 22-Dec-2015
34 Views
Preview:
DESCRIPTION
TRANSCRIPT
COMPUTACIÓN
PROGRAMACIÓN EN MATLAB
Funciones
“Con el conocimiento, se acrecientan las dudas”
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Agenda
Funciones en MatLab
Programación de Funciones
Funciones Recursivas
Parámetros Predeterminado
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
El primer paso en la correcta programación es la
Programación Estructurada, la cual se sustenta en
tres estructuras básicas (secuenciales, selectivas y
repetitivas).
El siguiente paso es la programación funcional, esta
basada en el paradigma “divide y triunfaras”. Un
programa se divide en n funciones cada una de las
cuales ejecuta una operación.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Programación
Estructurada
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Conceptos:
1. MatLab sólo posee funciones.
2. MatLab como cualquier otra aplicación pose un conjunto de
funciones propias y otras definidas por el usuario.
3. Las funciones las propias de MatLab, pueden ser asignadas
(“llamadas”) desde la ventana de comandos (Command
Window), como por funciones creadas por el usuario.
4. Las funciones creadas por el usuario pueden operan en
forma similar, pueden ser asignadas (“llamadas”) desde la
ventana de comandos (Command Window), como por
funciones creadas por el mismo usuario. Ya que las
funciones son tratadas como programas independientes.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Conceptos:
5. Las funciones creadas por el usuario pueden ser Recursivas.
6. La programación de funciones deben cumplir con todas las
normas de los programas en MatLab.
7. Guardados en un archivo que se denominan genéricamente
M-File.
8. Estos archivos deberá llevara el mismo nombre que el
nombre de la función y su extensión será M.
9. Los archivos M-File, MatLab los almacena por
predeterminado en la carpeta Work.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Programa
Función 1 Función 2 Función 3
Función 5Función 4 Función 6
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Función
Programa
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones en MatLab
Conceptos:
Una función puede recibir de quien la llama,
uno, varios o ningún valor.
Una función devuelve siempre a quien la
llamo una variable.
Una función debe ejecutar una sola
operación.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Pasos a seguir:
1. Se abre MatLab (si no se halla abierto).
2. Se abre el Editor de programas.
3. Se escribe el código (sobre la ventana
nueva).
4. Se guarda con el nombre de la función.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Ejemplo:
Se va a crear una función (sumar) que
recibe dos valores y devuelve su suma.
function k = sumar(w,x)
K=w+x;
Código:
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
function variable=nombref (p1, p2);
R:= nombref (va1, va2); Asignación
Cuerpo.
<cuerpo de la función>
variable := valor de la función; {*sentencia de asignación*}
CabeceraParámetros formales su tipos y tipo de datos que
devuelve
Nombre del archivo es el de la función
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Ejemplo 2:
Se va a crear una función (fun_ejemplo) que
recibe un valor y devuelve el resultado de la
siguiente operación.
xex
xsenoxxxf
32
3
24
)(532)(
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Programación de Funciones
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones Recursivas
Cumplen con las mismas condiciones de las
ya vistas en Pascal.
Funciones Recursivas
Dentro del cuerpo de la
función hay un llamado a
si misma.
Tiene una salida por
último caso.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Funciones Recursivas
begin
if p<=1 factorialR = 1;
else factorialR = p * factorialR(p-1);
end;
function v = factorialR (p);
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Parámetros Predeterminados
MatLab permite crear funciones tales que
cuando son invocadas no sea necesario pasarle
todos los parámetros. Y la misma pueda
reemplazar las variables no recibidas, por
valores predeterminados por el programador.
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Parámetros Predeterminados
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Parámetros Predeterminados
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
Preguntas
y
Respuestas
Mg. Ing. Fernando J. Lage“Con el conocimiento, se acrecientan las dudas”
Facultad de INGENIERÍA U B A Enero-Febrero, 2010
F I N
top related