20.estructuras control

14
Herramientas computacionales para la matemática MATLAB: Estructuras de control Verónica Borja Macías Mayo 2012 1

Upload: julian-alberto

Post on 06-Jan-2016

259 views

Category:

Documents


3 download

DESCRIPTION

ninguna

TRANSCRIPT

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

7/17/2019 20.Estructuras Control

http://slidepdf.com/reader/full/20estructuras-control 14/14

MatlabEjercicios

14