ESTRUCTURAS DE DECISI N
Las secciones del código de los programas de cómputo
se pueden categorizar en una de tres estructuras:
Secuencias
Estructuras de selección
Estructuras de repetición.
ESTRUCTURAS DE DECISIÓN
Las secuencias son listas de comandos que se ejecutan una
después de otra.
Una estructura de selección permite al programador
ejecutar un comando (o conjunto decomandos) si algún
criterio es verdadero, y un segundo comando o conjunto de
comandos si el criterio es falso. Un enunciado de selección
proporciona los medios de elegir entre dichas rutas, con
base en una condición lógica. Las condiciones que se
evalúan con frecuencia contienen operadores tanto
relacionales como lógicos o funciones.
Una estructura de repetición, o bucle, hace que un grupo
deenunciados se ejecute varias veces. El número de veces
que se ejecuta un bucle depende de un contador o de la
evaluación de una condición lógica.
OPERADORES RELACIONALES Y LÓGICOS
Las estructuras de selección y repetición que se usan
en MATLAB dependen de operadores relacionales y
lógicos. MATLAB tiene seis operadores relacionales
para comparar dos matrices de igual tamaño, como se
muestra en latabla.
OPERADORES RELACIONALES Y LÓGICOS
MATLAB también le permite combinar comparaciones
con los operadores lógicos and, not y or.
DIAGRAMAS DE FLUJO Y SEUDOCÓDIGO
Algoritmo.- secuencia ordenada de pasos para resolver
un problema.
Los diagramas de flujo son un enfoque gráfico para
crear su plan de codificación.
El seudocódigo es una descripción verbal de su plan.
COMANDO if
Unenunciado if simple tiene la siguiente forma:
if enunciados de comparacion
lineas de comandos
end
Si la comparación (una expresión lógica) es verdadera,
se ejecutan los enunciados entre el enunciado if y el
enunciado end. Si la comparación es falsa, el programa
salta inmediatamente al enunciado que sigue a end.
COMANDO if
ejemplo:
if G<50
contador=contador +1;
end
Sinembargo, si G no es escalar, entonces el enunciado if
considera la comparación verdadera ¡sólo si es verdadera para
todo elemento! Por tanto, si G se define desde 0 hasta 80,
G=0:10:80
entonces la comparación es falsa ¡y no se ejecutan los enunciados
dentro del enunciado if! En general, los enunciados if funcionan
mejor cuando tratan con escalares.
LA ESTRUCTURA if/else
La estructura if/elsenos permite ejecutar un conjunto de
enunciados si la comparación es verdadera y un conjunto
diferente de enunciados si la comparación es falsa.
if x>=0
res=sqrt(x)
else
disp('no puedes calcular la raíz cuadrada de un número
negativo')
end
si x=[1 5 9 -5 12];
No podrá calcular la raíz de cada elemento debido a que hay un
numero negativo por lo que la comparación se considerafalsa.
LA ESTRUCTURA if/else
Cuando se anidan varios niveles de enunciados if/else, puede ser
difícil determinar cuáles expresiones lógicas deben ser
verdaderas (o falsas) con la finalidad de ejecutar cada conjunto
de enunciados. La función elseif le permite comprobar criterios
múltiples mientras se mantiene el código fácil de leer.
if edad<16
disp('No tiene edad para conducir')elseif edad<18
disp('Puede obtner un permiso')
elseif edad<70
disp('Puede obtener licencia estandar')
else
disp('Los conductores mayores de 70 años necesitan
permiso especial')
end
SWITCH Y CASE
La estructura switch/case se usa con frecuencia cuando
existe una serie de opciones de ruta de programación
para una variable dada, dependiendo de su valor.
Switch/case es similar aif/else/elseif. De hecho,
cualquier cosa que pueda hacer con switch/case se
podría hacer con if/else/elseif. Sin embargo, el código
es un poco más fácil de leer con switch/case, una
estructura que le permite elegir entre múltiples salidas,
con base en ciertos criterios. Ésta es una importante
distinción entre switch/case y elseif. Los criterios
pueden ser un escalar o una cadena de caracteres.
SWITCH Y...
Regístrate para leer el documento completo.