You are on page 1of 4

switch

Sintaxis
switch switch_expression
case case_expression
statements
case case_expression
statements
...
otherwise
statements
end

El bloque switch prueba cada caso hasta que una de las expresiones Case sea true.
Un caso (case) es verdadero cuando:
 Para los números, case_expression == switch_expression.
 Para los vectores de caracteres, strcmp(case_expression,switch_expression) == 1.
 Para los objetos que admiten la función eq , case_expression == switch_expression.
 Para una matriz de celdas case_expression, al menos uno de los elementos de la
matriz de celdas coincide con switch_expression, como se define anteriormente
para los números, los vectores de caracteres y los objetos.
Cuando una expresión de caso es true, MATLAB ejecuta las instrucciones correspondientes
y sale del bloque switch .
Ejemplo:
Mostrar texto diferente de forma condicional, dependiendo de un valor introducido en el
símbolo del sistema.
n = input('Enter a number: ');

switch n
case -1
disp('negative one')
case 0
disp('zero')
case 1
disp('positive one')
otherwise
disp('other value')
end
BREAK
Se utiliza para manipular el comportamiento normal de los bucles, ya sean for, if o while, y
así saltarse algunas repeticiones. La sentencia BREAK permite terminar el bucle de golpe.
Al llegar a una instrucción BREAK, el programa sale del bucle y continúa ejecutando el resto
de comandos.
Ejemplo:
nro=input('ingrese un numero positivo');
i=0;
while i<=nro
disp(i);
i=i+1;
if i==2;
break;
end;
end

CONTINUE
La sentencia CONTINUE se utiliza para saltarse alguna iteración dentro de un bucle for o
while, saltándose dentro de la iteración todos los comandos hasta el final, hasta la siguiente
iteración.
Ejemplo:
fid = fopen('magic.m','r');
count = 0;
while ~feof(fid)
line = fgetl(fid);
if isempty(line) || strncmp(line,'%',1) || ~ischar(line)
continue
end
count = count + 1;
end
fprintf('%d lines\n',count);
fclose(fid);
Return
La función return finaliza la secuencia actual de comandos y devuelve el control a la función
invocadora o al teclado. return también se utiliza para terminar el modo keyboard (teclado).
Normalmente, una función llamada transfiere el control a la función que la invocó cuando
llega al final de la función. Es posible insertar una instrucción return dentro de la función
llamada para forzar una finalización temprana y transferir el control a la función invocadora.
Ejemplo:
En su carpeta de trabajo actual, cree una función, findSqrRootIndex, para encontrar el
índice de la primera aparición de la raíz cuadrada de un valor dentro de una matriz. Si no
se encuentra la raíz cuadrada, la función devuelve NaN.
function idx = findSqrRootIndex(target,arrayToSearch)
idx = NaN;
if target < 0
return
end
for idx = 1:length(arrayToSearch)
if arrayToSearch(idx) == sqrt(target)
return
end
end

try / catch
Puede usar una declaración try / catch para ejecutar el código después de que su programa
encuentre un error. Las declaraciones de prueba / captura pueden ser útiles si:
 ¿Quieres terminar el programa de otra manera que evita errores?
 Necesidad de limpiar los efectos secundarios no deseados del error.
 Tiene muchos parámetros de entrada problemáticos o comandos
 Organice las declaraciones de prueba / captura en bloques de código, similar a este
pseudocódigo:
try
try block...
catch
catch block...
end
MATLAB lanza un error cada vez que k> n. No puede construir un conjunto con más elementos, k,
que los elementos que posee, n. Usando una declaración try / catch, puede evitar el error y
ejecutar esta función independientemente del orden de las entradas:
Ejemplo:
function com = robust_combine(n,k)
try
com = factorial(n)/(factorial(k)*factorial(n-k));
catch
com = factorial(k)/(factorial(n)*factorial(k-n));
end
end

You might also like