Sintaxis del interruptor de matlab
expresión de cambio
caso
caso
de lo contrario
fin
Descripción y ejemplos del interruptor de Matlab
La declaración de conmutación condicional controla la ejecución del programa saltando a un caso desde una lista de opciones de casos. El control de este salto se define por una variable contenida en el argumento del interruptor y por una constante predefinida en cada caso. Si esta constante no está predefinida en ningún caso, la instrucción Switch salta a la opción "De lo contrario". Una vez que se han ejecutado los argumentos en el caso, se libera el interruptor condicional y el programa continúa su ejecución desde "Fin". Este interruptor condicional no acepta operadores relacionales al analizar variables.
Cómo usar el interruptor condicional al flujo del programa de control en MATLAB.
En este simple ejemplo, creamos una aplicación de la consola e ingresamos un valor a través de la solicitud () para dirigir el flujo del programa al número de caso que seleccionamos.
En todos los casos de cambio condicional, se llama a la función disp (), que muestra el mensaje "Elegiste el caso"En la consola de comando, seguido del número del caso que seleccionamos y le mostramos el resultado de una función simple de MATLAB. Si el valor ingresado en la variable "a" a través de la consola no corresponde a una constante especificada previamente en los casos, el conmutador reenvía el salto a la opción "de lo contrario", donde muestra el siguiente mensaje: "A" fuera de escala, "A" es: seguido de su valor. El objetivo de este ejemplo es comprender mejor el cambio condicional. Para este fin, estableceremos puntos de interrupción en la primera línea de cada caso, lo que detendrá la ejecución del programa y nos permitirá ver en tiempo real dónde se dirige la ejecución del programa.
Los puntos de interrupción son una herramienta muy recomendable en la tarea de programación para depurar este tipo de condicionales.
Crear un script y pegar el siguiente código. Para salir de la aplicación, presione Ctrl+C.
Mientras que 1
indic = 'Ingrese un valor y presione Entrar ...';
a = entrada (indicador);
Cambiar un
caso 1
disp (['eligió el caso', num2str (a), 'pequeño cuadrado mágico para ti']);
tu = magia (3)
Caso 2
disp (['eligió el caso', num2str (a), 'una matriz de ceros para usted']);
tu = ceros (5)
Caso 3
disp (['eligió el caso', num2str (a), 'una matriz de los que usted']);
usted = un (5)
Caso 4
disp (['eligió el caso', num2str (a), 'un cuadrado mágico para usted']);
tu = magia (7)
de lo contrario
disp (['"a" fuera de escala, "a" es:', num2str (a)])
fin
fin
Ejecute el script y desde la consola de comando, ingrese diferentes valores en "A" para dirigir el flujo del programa hacia los diferentes casos
Cómo usar el interruptor condicional para hacer un convertidor de unidad de medida en MATLAB
En el siguiente ejemplo, haremos una aplicación de consola en MATLAB donde utilizaremos el interruptor condicional para convertir unidades de medición. Esta aplicación mostrará una lista de elementos con opciones de conversión.
Usando la función Semot (), ingresamos el número del elemento seleccionado, que se almacena en la variable "Artículo", y el valor que queremos convertir, que se almacena en la variable "Valor".
El "elemento" variable será el argumento del interruptor condicional que dirigirá el programa al caso que coincida con el número de elemento o la unidad de conversión seleccionada por el usuario.
artículo de interruptor
caso 1
Cm a pulgada
Caso 2
Pulgadas a centímetros
Caso 3
Km a mi
Caso 4
MI a KM
de lo contrario
Artículo no reconocido
fin
En cada caso, la operación matemática para llevar a cabo la conversión se aplicará al valor almacenado en "valor". Crearemos una cadena con un mensaje al usuario que mostrará el resultado después de que se lance el programa del interruptor condicional. También utilizaremos la opción "De lo contrario" para informar al usuario en caso de seleccionar un elemento que no sea reconocido.
Crear un script, pegar este código y presione ejecutar. Para salir de la aplicación, presione Ctrl+C.
Mientras que 1
clc ();
Disp 'Converter de la unidad en MATLAB. Salir presione Ctrl+C.'
disp 'cm to pulg [1]';
disp 'pulgada a cm [2]';
disp 'km a mi [3]';
disp 'mi to km [4]';
solicitado = 'Seleccionar unidad de conversión';
item = input (solicitante);
indic = 'Ingrese el valor para la conversión';
valor = entrada (indicador);
artículo de interruptor
caso 1
x = valor.* 0.3937;
out = ([num2str (valor), 'cm son equivalentes a', num2str (x), 'pulgada']);
Caso 2
x = valor.* 2.54;
out = ([num2str (valor), 'pulgadas son equivalentes a', num2str (x), 'cm.']);
Caso 3
x = valor.* 0.6214;
out = ([num2str (valor), 'km son equivalentes a', num2str (x), 'mi']);
Caso 4
x = valor.* 1.6093;
out = ([num2str (valor), 'mi son equivalentes a', num2str (x), 'km']);
de lo contrario
Disp 'El elemento de conversión no es reconocido'
fin
disp (fuera);
solicitado = 'Presione Entrar para continuar ...';
entrada (indicador);
fin
Una vez que hayamos seleccionado el tipo de conversión y el valor, la aplicación muestra el resultado en la unidad de medición que hemos elegido.
Cómo usar la condición del interruptor para obtener el proceso correcto en una operación de raíz cuadrada.
Para el cálculo de la raíz cuadrada, MATLAB tiene tres funciones diferentes, el uso incorrecto de estas puede causar resultados inexactos o mensajes de error inesperados.
Para evitar esto, es necesario realizar la operación con la función correcta, dependiendo del tipo de datos cuya raíz cuadrada esté determinada. En este ejemplo, crearemos una aplicación de consola simple utilizando la condición de interruptor en la realización de la operación de la raíz cuadrada con la función más apropiada dependiendo del tipo y el signo.
El escalar "A" será la variable de la que queremos obtener la raíz cuadrada, y ingresaremos su valor y firmaremos utilizando la función de inmediato. Para obtener el signo del valor en "A", usaremos la función de signo (), que devolverá un 1 en "S" si el valor de "A" es positivo, 0 si el valor es 0 y -1 Si es negativo. La variable "S" se envía al interruptor condicional
Crear un script y pegar el siguiente código. Para salir de la aplicación, presione Ctrl+C.
Mientras que 1
indic = 'Ingrese un valor de signo positivo o negativo y presione Entrar ...';
a = entrada (indicador);
s = signo (a);
interruptor S
Caso 0
disp ('el escalar "a" es 0 y no tiene una raíz cuadrada')
caso 1
r = RealSqrt (a)
disp (['el escalar "a" tiene un signo positivo. Su raíz cuadrada es: ', num2str (r)])
caso 1
r = sqrt (a)
disp (['el escalar "a" tiene un signo negativo. Su raíz cuadrada es: ', num2str (r)])
fin
fin
Ejecute el script e ingrese varios valores de signo positivos y negativos en la consola de comando para obtener los resultados.
De esta manera, el interruptor condicional dirigió la operación de la raíz cuadrada a la función correcta dependiendo del signo del valor de "A".
Conclusión:
En este artículo, se ha explicado el uso del interruptor de función de salto condicional en MATLAB, y se han dado algunos ejemplos prácticos para demostrar el uso de esta función. Los tipos de argumentos respaldados por esta función condicional y los tipos de datos aceptados también se han explicado en detalle. Esperamos que hayas encontrado útil este artículo de Matlab. Consulte otros artículos de Sugerencia de Linux para obtener más consejos e información.