20.Estructuras Control
-
Upload
julian-alberto -
Category
Documents
-
view
261 -
download
3
description
Transcript of 20.Estructuras Control
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 1/14
Herramientas computacionales para la
matemática
MATLAB: Estructuras de control
Verónica Borja Macías
Mayo 2012
1
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 2/14
MatlabEstructuras de control
2
Una sentencia condicional es una instrucción MATLAB quepermite tomar decisiones sobre si se ejecuta un grupo de
comandos que cumplen una condición o, por el contrario,
omitirlos.
En una sentencia condicional se evalúa una expresióncondicional. Si la expresión es verdadera, el grupo o bloque
de comandos se ejecutan. Si la expresión es falsa, MATLAB no
ejecuta (salta) el grupo de comandos en cuestión,
Las sentencias condicionales pueden ser parte de un sctipt ode una función.
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 3/14
MatlabEstructuras de control
3
Sentencias condicionales:
if-end if-else-end if-elseif-else-end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 4/14
MatlabEstructuras de control
4
IF-END Un enunciado if simple tiene la siguiente forma:
if condicion
sentencias
end
Si la condición (una expresión lógica) es verdadera, se
ejecutan las sentencias y sigue a end.
Si la comparación es falsa, el programa saltainmediatamente al enunciado que sigue a end.
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 5/14
MatlabEstructuras de control
5
IF-ELSE-END El if simple le permite ejecutar una serie de enunciados si
una condición es verdadera y saltar dichos pasos si la
condición es falsa.
La cláusula else le permite ejecutar un conjunto deenunciados si la comparación es verdadera y un conjunto
diferente de enunciados si la comparación es falsa.
if condicion
bloque1
else
bloque2
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 6/14
MatlabEstructuras de control
6
IF-ELSEIF-ELSE-END Esta estructura incluye dos sentencias condicionales, lo
que hace posible ejecutar uno de entre tres grupos de
instrucciones diferentes.
if condicion1bloque1
elseif condicion2
bloque2
else
bloque3
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 7/14
MatlabEstructuras de control
7
Es necesario destacar que se puede introducir mis de unasentencia elseif y por tanto asociar nuevos grupos de
instrucciones que se ejecutarán o no dependiendo de las
condiciones establecidas.
Además, la sentencia else es opcional. Esto significa que en el
caso de que haya varios elseif y ningún else, si alguna condición
de los elseif es verdadera, los comandos serán ejecutados, pero
en otro caso (todas las condiciones de los elseif son falsas) no se
ejecutan ni se realizará ninguna operación.
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 8/14
MatlabEjemplo
8
Ejemplo:ejemplo1.m
G=100*rand(1);
count=0;
if G< 50
count = count +1 ;
disp(G);
end
Ejemplo:ejemplo2.m
x = input('Ingrese un valor para calcular su logaritmo: ') ;
if x >0
y=log(x);fprintf('\nEl logaritmo de %f es %f. \n',x,y);
else
beep
disp('La entrada a la función log debe ser positiva')
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 9/14
MatlabEjemplo
9
Ejemplo:ejemplo3.m
age = input('Ingrese su edad: ') ;
if age<16
disp('Lo siento. Tendrá que esperar')elseif age<18
disp('Puede obtener un permiso provisional para conducir')
elseif age<70
disp('Puede obtener una licencia estándar')
else
disp('Los mayores de 70 requieren una licencia especial ')
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 10/14
MatlabEstructuras de control
10
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 a if/else/elseif. De hecho, cualquiercosa que pueda hacer con switch/case se podría hacer
con if/else/elseif.
Se trata de una estructura que le permite elegir entremúltiples salidas, con base en ciertos criterios. Los
criterios pueden ser un escalar (un número) o una
cadena.
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 11/14
MatlabEstructuras de control
11
switch variablecase opcion1
código a ejecutar si la variable es igual a opcion1
case opcion2
código a ejecutar si la variable es igual a opcion2...case opcionN
código a ejecutar si la variable es igual a opcionN
otherwisecódigo a ejecutar por default
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 12/14
MatlabEjemplo
12
Ejemplo:ejemplo4.m
ciudad = input('Ingrese el nombre de una ciudad entre comillas simples: ')
switch ciudad
case 'Veracruz'disp('Costo del boleto: $345 ')
case 'Puebla'
disp('Costo del boleto: $150')
case 'Oaxaca'
disp('Costo del boleto: $100')
otherwise
disp('No hay servicio de transporte a esa ciudad.')
end
7/17/2019 20.Estructuras Control
http://slidepdf.com/reader/full/20estructuras-control 13/14
MatlabEjercicios
13