Curso de MatLab Basico
Sesion 6: Programacion en MATLAB
Milton Torres
23 de marzo de 2016
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 1 / 18
Contenido
1 Operadores relacionados y logicos
2 Sentencias condicionales
3 Bucles
4 Los comandos break y continue
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 2 / 18
Operadores relacionados y logicos
Operadores relacionados y logicos
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 3 / 18
Operadores relacionados y logicos
Operadores relacionales
Los operadores relacionales en MATLAB son:
Operador relacional Descripcion
< Menor que.
> Mayor que.
<= Menor o igual.
>= Mayor o igual.
== Igual a.
Distinto de.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 4 / 18
Operadores relacionados y logicos
Operadores relacionales
Los operadores relacionales se utilizan como operadores
aritmeticos dentro de expresiones matematicas.
Cuando se comparan dos numeros, el resultado es 1 (valor logico
verdadero) si la comparacion, en funcion del operador relacional,
es verdadera, y 0 (valor logico falso) si la comparacion es falsa.
Si se comparan dos escalares, el resultado sera tambien un
escalar que tomara el valor 1 o 0. Si se comparan dos arreglos
(solo si tienen el mismo tamano), la comparacion se llevara a
cabo elemento a elemento.
Si se compara un escalara con un arreglo, el escalar se
comparara con todos los elementos del arreglo, de forma que el
resultado sera un arreglo logico, con unos y ceros, segun el
resultado de la comparacion en cada posicion del arreglo.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 5 / 18
Operadores relacionados y logicos
Operadores logicos
Los operadores logicos en MATLAB son:
Operador logico Nombre Descripcion
& Y (AND)A y B. Funciona con dos operandos. El
resultado es verdadero si ambos son ver-
daderos, en otro caso el resultado es falso
(0).
| O (OR) A o B. Funciona con dos operandos. El re-
sultado es verdadero si alguno de los dos
es verdadero, en otro caso el resultado es
falso (0).
NO (NOT) No A. Funciona con un operando. Da la
negacion del operando, es decir, verdade-
ro (1) si A es falso, y falso (cero) si A es
verdadero.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 6 / 18
Sentencias condicionales
Sentencias condicionales
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 7 / 18
Sentencias condicionales
Sentencias condicionales
if expresion condicional consistente en operaciones relacionales y logicas.
Las sentencias condicionales pueden ser parte de un programa
escrito de fichero script o fichero de funcion.
Como se vera a continuacion, cada sentencia if (si) debe ir
acompanada de la sentencia de finalizacion end (fin).
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 8 / 18
Sentencias condicionales
La estructura if-end
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 9 / 18
Sentencias condicionales
La estructura if-else-end
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 10 / 18
Sentencias condicionales
La estructura if-elseif-else-end
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 11 / 18
Sentencias condicionales
La estructura switch-case
La primera lnea en la sentencia switch-case tiene la forma:
switch expresion donde la expresion puede ser un escalar o
una cadena.
A continuacion del comando switch hay uno o varios comandos
de tipo case, seguidos por valores que pueden ser escalares o
cadenas. Cada comando case esta asociado a la serie de
instrucciones que se escriben a continuacion de el.
Despues del ultimo comando case puede haber, opcionalmente,
un comando otherwise, seguido tambien de un grupo de
instrucciones.
La ultima lnea debe de ser una sentencia end.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 12 / 18
Bucles
Bucles
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 13 / 18
Bucles
Bucles del tipo for-end
Tiene la sintaxis for k = f:s:t y termina en end.
En este tipo de bucles la ejecucion de una o varias instrucciones
se repite un numero fijo de veces.
La variable ndice del bucle puede tener cualquier nombre.
En el primer paso k toma el valor inicial f, y el sistema ejecuta
los comandos que se encuentran entre las instrucciones for y
end.
El incremento s puede ser negativo.
Si el valor de incremento se omite, el incremento por defecto
sera de 1.
Si f=t, el bucle se ejecuta solo una vez.
Si f>t y s>0, o si f<t y s<0, el bucle no se ejecutara.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 14 / 18
Bucles
Bucles del tipo while-end
Tiene la sintaxis while expresion condicional y te termina en end.
La expresion condicional del comando while debe incluir al
menos una variable.
Las variables de la expresion condicional deben tener valores
asignados cuando MATLAB ejecute el comando while por
primera vez.
Al menos una de las variables de la expresion condicional debe
cambiar del valor por la ejecucion de los comandos que estan
entre la sentencia while y la sentencia end. En caso contrario, si
ninguna de las variables cambia, se convierte en un bucle infinito.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 15 / 18
Los comandos break y continue
Los comandos break y continue
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 16 / 18
Los comandos break y continue
El comando break
Cuando se introduce dentro de un bucle, este comando termina
de forma completa la ejecucion del bucle.
Si el comando break se encuentra dentro de un bucle anidado,
solo terminara la ejecucion del bucle anidado.
Cuando el comando break aparece fuera de un bucle, en un
fichero script o de funcion, provoca la terminacion del fichero en
cuestion.
El comando break se utiliza habitualmente dentro de sentencia
condicionales.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 17 / 18
Los comandos break y continue
El comando continue
El comando continue se puede usar dentro de un bucle para
detener la iteracion actual y forzar la siguiente iteracion del
bucle.
El comando continue normalmente forma parte de alguna
sentencia condicional. Cuando MATLAB alcanza este comando
dentro de un bucle, este no sigue ejecutando el resto de los
comando del bucle, sino que salta a la sentencia end y a
continuacion comienza la siguiente iteracion.
Milton Torres Curso de MatLab Basico 23 de marzo de 2016 18 / 18