You are on page 1of 16

PROGRAMACION EN MATLAB

El simbolo ~ se obtiene
presionando
simultaneamente AltGr y 4 y
espacio en blanco.

expresion1 OpR expresion2


ESTRUCTURAS IF-ELSEIF-ELSE-END
La orden else puede
 if expresión lógica 1 aparecer o no.
 conjunto de órdenes 1 También puede
 elseif expresión lógica 2 aparecer sólo la
 conjunto de órdenes 2 combinación if-end o
 elseif expresión lógica 3 la combinación
 conjunto de órdenes 3
if-else-end.
 .
 .
 else
 conjunto de órdenes

 end
EJEMPLO
 Resolver una ecuación de 2do. Grado de la forma:
ax2 + bx + c = 0
 Se crea el siguiente fichero .m:
 a = 1; b= 1; c =1;
 D = sqrt(b^2-4*a*c);
 if D >= 0
 x1 = (b-D)/(2*a)
 X2= (b +D)/(2*a)
 else
 x1 = b/(2*a)+D*sqrt(-1)
 x2 = conj(x1)
 end
Ejemplo:ejemplo2.m
x = input('Ingrese un valor para calcular su logaritmo: ') ;
If x >0
y=log(x);
fprintf(‘\n El logaritmo de %f es %f. \n',x,y);
else
beep
disp('La entrada a la función log debe ser positiva')
end
LA ESTRUCTURA FOR-END
La sintaxis es la siguiente:
 for k=x
 conjunto de órdenes
 end
donde k es una variable y x es un vector.
Por ejemplo si queremos calcular el valor de k2, cuando k = 4,5,6:
>> for k=[4,5,6]
 k^2
 end

Bucles while-end
Su sintaxis es la siguiente:
 while expresión lógica
 conjunto de órdenes
 End
EJEMPLO
 x=1
 while x<=11
 x=2*x
 end
Switch variable
case opcion1
código a ejecutar si la variable es igual a opcion1
case opcion2
código a ejecutar si la variable es igual a opcion2
.
.
.
case opcionN
código a ejecutar si la variable es igual a opcionN
otherwise
código a ejecutar por default
end

EJEMPLO
Programe un menú de opciones para resolver una función implícita f(x) = 0 con
diversos métodos.
FICHEROS FUNCTION
 Las function se construyen en ficheros .m . Se distinguen de los
guiones en la primera orden en donde se deben
especificar los argumentos
 function [Argumento(s) de Salida] = nombrefuncion (Arg.
Entrada)
% líneas de comentarios
% que aparecen al ejecutar
% help nombrefuncion
Órdenes que hacen los cálculos
...
 Por norma los nombres de la function y del fichero coincidirán.
Es decir, el fichero lo llamamos nombrefuncion.m
 Para llamar o ejecutar la function se realiza como las órdenes
normales
 » [Argumento(s) de Salida] = nombrefuncion (Arg. Entrada)
CONSTRUIR UNA FUNCTION RAICES.M QUE CALCULE LAS RAÍCES DE UN
POLINOMIO DE SEGUNDO GRADO AX2+BX+C
Se escribe en el fichero raices.m
 function [x1, x2] = raices(a,b,c)
 % Función que calcula en x1 y x2 las raíces
 % de un polinomio de segundo grado
 % a x^2 + b x + c = 0
 D = sqrt(b^2-4*a*c);
 if D >= 0
 x1 = (b-D)/(2*a)
 X2= (b +D)/(2*a)
 else
 x1 = b/(2*a)+D*sqrt(-1)
 x2 = conj(x1)
 end
Una vez guardado el fichero raices.m. Se puede llamar
 >> [x1,x2] = raices(1,-3,2)
 >> help raices
 Función que calcula en x1 y x2 las raíces
 de un polinomio de segundo grado
 a x^2 + b x + c = 0
CALCULO SIMBOLICO

Obtener el valor de f (x,y) = (2x+5y+3)^1/3 en los puntos (0,0), (0,1), (0,2),


y (0,3).
» syms x y
» f=(2*x+5*y+3)^(1/3)
» v=[0 1 2 3];
» val=subs(f,{x,y},{0*v,v}) %sustituye (x,y) por (0,v(i))
» val=double(val) %pasa val a variable numérica
LÍMITES, DERIVADAS E
INTEGRALES SIMBÓLICAS
MANIPULACIÓN DE EXPRESIONES
SIMBÓLICAS
SOLUCION DE ECUACIONES
 solve(p)  encuentra soluciones de la ecuación p=0
Calcúlense todas las raíces del polinomio z3+z2−4z+6

» syms z
» p=z^3+z^2-4*z+6
» sol=solve(p)
 nos da las soluciones de la ecuación. La solución es un vector
de tres componentes que hemos guardado con el nombre
sol.
 La orden solve no siempre da todas las soluciones como
puede comprobarse si se escribe
» sol=solve(’sin(x)’)
 Sólo devuelve sol = 0
>> syms x y
>> sol=solve('x+y-1', '2*x-3*y-10')
Para obtener los valores de la solución escribimos
>> sol.x, sol.y

MAS EJEMPLOS

You might also like