viernes, 19 de abril de 2013

Condicional IF en MATLAB


La sentencia if se utiliza  como bifurcación simple por sí sola, es decir, en aquellas situaciones en las cuales se requiera evaluar solamente una condición, por ejemplo, suponga que tiene dos números a y b y necesita comprobar si son iguales y ejecutar una acción, para ello bastaría con una sentencia if simple:

if a==b
   disp('a es igual a b');
end

A  diferencia del caso anterior hay situaciones que requieren la ejecución de una acción cuando la condición se cumpla y de otra en caso contrario, entonces puede utilizarse una bifurcación doble formada por las sentencias  if-else. Retomando el ejemplo para la bifurcación if simple, podríamos modificarlo de tal manera que envíe también un mensaje (ejecute una acción) para cuando la condición no se cumple:

if a==b
   disp('a es igual a b');
else
   disp('a es diferente de b');
end

Ahora imagine que para los ejemplos anteriores  se necesita especificar si  a=b, si a>b o bien si a<b, lo cual implicaría tener una sentencia de selección múltiple if-elseif-else que permite escoger entre varias opciones, evaluándose en orden descendente, por ejemplo refiérase a la siguiente estructura:

if cond1
   % Instrucciones
elseif cond2
   % Instrucciones
elseif cond3
   % Instrucciones
   .
   .
   .
elseif condN
   % Instrucciones
else
   % Instrucciones
end

MATLAB evalúa primeramente la condición 1 contenida en la sentencia if (cond1) y en el caso de no cumplirse evalúa la siguiente condición de forma sucesiva (cond2, cond3, …); finalmente y en el caso de que ninguna de las opciones evaluadas se cumpla, se ejecuta la instrucción contenida en la sentencia else. A continuación se muestra el ejemplo de una bifurcación múltiple para la situación descrita al principio:

if a==b
   disp('a es igual que b');
elseif a>b
   disp('a es mayor que b');
elseif a<b
   disp('a es menor que b');
end

No hay comentarios.:

Publicar un comentario