Está en la página 1de 4

FUNCIONES EN MATLAB

CARLOS GUTIERREZ

Definicin de Funcin

Un funcin es un sub-programa definido por el programador que es escrito usando instrucciones


estndar de MATLAB en un fichero .m, y usado como cualquier otra instruccin de MATLAB en
cualquier otro fichero .m. Como cualquier otra instruccin de MATLAB, las funciones tienen un
nmero y posicin de argumentos de entrada y salida.

Una funcin puede ser accesible desde cualquier punto de un programa y una vez que la funcin ha
llevado a cabo su tarea, el control ser devuelto al punto desde donde se llam. Generalmente una
funcin procesar la informacin que se le pase desde el punto de llamada y devolver unos valores.
A esta informacin se la denomina argumentos o parmetros de entrada y a los valores devueltos
se les denomina argumentos o parmetros de salida.

Una funcin tiene dos componentes principales:

La declaracin de la funcin con sus argumentos


Y el cuerpo de la funcin

EJ. function [as1, as2, ... asM]=nombreFuncion(ae1, ae2, ... aeN) Cuerpo de la funcin

Para declarar una funcin el comando es function


No existe lmite en el nmero de argumentos de entrada o salida.
Los argumentos de salida se engloban con [ ] y los de entrada con ( )
A la hora de nombrar las funciones hay que seguir los mismos
criterios que para las variables.

Ejemplo:

function [a]=modulo(x,y)
a=sqrt(x^2+y^2);

Para hacer un programa con funciones es muy IMPORTANTE tener en cuenta los siguientes
puntos:

Las funciones tienen su propio fichero .m.


Lo primero para crear una funcin es crear un nuevo fichero .m.
La primera linea del fichero ha de ser la instruccin function
IMPORTANTE: asegurarse de que el nombre de la funcin sea algo fcil de recordar.
Despus de crear la funcin hay que salvar el fichero .m
IMPORTANTE: El nombre del fichero tiene que ser el mismo que el nombre de la funcin
Las lineas de cdigo que se escriben a continuacin de la instruccin function se denominan cuerpo
de la funcin y contienen otras instrucciones MATLAB u otras funciones. Es aqu donde todos los
operaciones, o lgica de la funcin son escritos.
Cuando se escribe una funcin es importante determinar los argumentos/parmetros de entrada y
salida. Por tanto es una buena idea desarrollar un pequeo esquema en el programa, para escribirlo
lo ponemos como si fuese un comentario(%), como por ejemplo:

*Ejemplo del fichero modulo.m :

Plantilla para resolver los ejercicios

function [a]=modulo(x,y)
%a=modulo(x,y) : funcin que calcula el modulo de un vector
% a partir de sus coordenadas x e y.
%
% Argumentos de entrada:
% x: coordenada x del vector
% y: coordenada y del vector
%
% Argumentos de salida:
% m: modulo del vector
a=sqrt(x^2+y^2);
EJERCICIOS PARA RESOLVER CON FUNCIONES

1- Escribir una funcin, llamada miTriangulo a la cual le pasemos la longitud de los 3 lados y
devuelva el rea y permetro del triangulo usando la formula de Heron.
2- Escribir una funcin en MATLAB que calcule el rea de un trapecio dados las longitudes de los
lados paralelos y la distancia entre ambos lados. La funcin se llamar areaTrapecio, y tendr
tres argumentos de entrada: lado1, lado2 y altura.
3- El IMC se calcula dividiendo el peso del individuo (en kilogramos) por el cuadrado de su altura
(en metros) al cuadrado. Escribir una funcin (calculoIMC.m) que a la que se le pase los valores
correspondientes del peso del individuo y su altura como argumentos de entrada y devuelva: el
valor de su IMC, el valor de su categora como una cadena de texto que sea 'Infrapeso' si IMC<19,
'Sobrepeso' son IMC>25 y 'Peso normal' si 19<=IMC<=25; y el valor de su peso ideal, que ser el
peso correspondiente a un IMC=19 si su categora es 'Infrapeso' o IMC=25 si su categora es
'Sobrepeso'
4- Escribir una funcin para calcular las races de una ecuacin cuadrtica, se debe tener en cuenta
si tiene soluciones y si son reales o imaginarias.
5- Dados dos radios, calcular el rea de la corona circular.
6- Dados los lados de un tringulo determinar si es un tringulo equiltero, issceles o escaleno, si
es que existe
7- Elabore una funcin en Matlab que convierta las coordenadas polares (,) de un punto,
en coordenadas cartesianas (x,y)
8- Escribe un archivo .m de la funcin, fun_es(x), que calcule la siguiente funcin:

y otro archivo para la funcin fun_lg que calcula el siguiente funcion

teniendo ya las funciones implementadas ahora cree una funcin que:

pregunte el nombre de la funcin que se desea evaluar,


permita al usuario teclear el nombre de la funcin,
evale la funcin con el comando de Matlab feval y devuelva los valores funcionales y
se detenga si la fucnion indicada por el usuario no es fun_es ni fun_lg.

9- Definir la funcin f(x)

10- Dada una recta ax+by+c=0, crear un programa que nos diga si un punto (x,y)
pertenece a dicha recta, est por encima o por debajo de ella
Comprobar si un numero es abundante
Conjetura de goldbach
http://ayudaingenieros.com/2016/06/18/coleccion-de-ejercicios-resueltos-de-matlab/

También podría gustarte