Вы находитесь на странице: 1из 10

MATLAB

Facultad de Ciencias

Departamento de Matemáticas

Dra. Pilar Nuñez Blas


Matlab Unasam

Programación en Matlab

Estructura de control de flujo

Matlab es un lenguaje de programación que dispone de sentencias para realizar


bifurcaciones y bifurcaciones y bucles.

Las bifurcaciones

Permiten realizar una o otra operación según se cumpla o no una determinada


condición.

Decisiones (instrucción if)

Es una forma más simple, la sentencia if se escribe en la forma siguiente

if condición if condición

instrucciones instrucciones

end else

instrucciones

end

Dra.Pilar Nuñez Blas 2


Matlab Unasam

Ej. Escriba y almacene el siguiente programa para mostrar el mayor entre

dos datos:

a=input('ingrese el valor de a ');

b=input('ingrese el valor de b ');

if a>b

m=a;

else

m=b;

end

disp(m);

2.- x=4;

If rem(x,2)==0

fprintf(¿El número es par’);

else

fprint(¿El número es impar’);

end

Bifurcación múltiples

En la bifurcación múltiple pueden concatenarse tantas condiciones if, como se


desea de manera que se ejecutará el bloque que pertenece a la condición que es
verdadera

If condición 1

Dra.Pilar Nuñez Blas 3


Matlab Unasam

Bloque1

Elseif condición2

Bloque2

Elseif condicion3

Bloque3

Else %opcion por defecto para cuando no se cumplan las


condiciones 1,2,3

Bloque4

end

Los Bucles

Permiten repetir las mismas o análogas opresiones sobre datos distintos. Mientras
que en c/c++/java el cuerpo de estas sentencias se determina mediante llaves { },
en maltab se utiliza la palabra end con análoga

False
Condición Sentencia
Condición

Tru True
e
False
Sentencia

En matlab no hay bucles con control al final del bucle, es decir no existe la
construcción análoga a do… while

Dra.Pilar Nuñez Blas 4


Matlab Unasam

Sentencia While

La estrucutra del bucle while es muy similar a la de c/c++/java su sintaxis es la


siguiente:

while condición

sentencias

end

donde la condición puede ser una expresión vectorial o matricial

Ejemplo

y = suma

x= input(‘ingrese el valor de x=’);

x=0;suma=0;

while x<=13

suma =suma +x

x=x+1;

end

disp.(‘la suma es:’);

disp. (suma);

Sentencia for

La sentencia for repite un conjunto de sentencia a un número predeterminado de


veces.

La siguiente estructura de control ejecuta sentencia con valores de i de 1 a n


variando de uno en uno.

Dra.Pilar Nuñez Blas 5


Matlab Unasam

for x=1:nl

sentencias

end

ejemplo

for x=1.2:9

y =x.^2-1;

disp.([x.y]);

No devuelve como:

1 0

3 8

5 24

7 48

9 80

General

for x= valor_inicial: incremento: valor_ final

sentencias

end

ejemplo

for i=n:0.2:1

sentencia

end

Bucles anidados

Dra.Pilar Nuñez Blas 6


Matlab Unasam

Se presenta en el caso que un bucle forma parte de las sentencias de otro bucle

for i = 1:m

Sentencia1

for j=1:n

Sentencia2

end

end

Sentencia break

La sentencia break hace que se termine la ejecución de bucle fory / 0 while más
interno que los que comprenden a dicha sentencia

Ejemplo

for k=1:2

for m= 1:7

if m>2*k

break

else

disp([k,m])

end

end

end

nos devuelve:

1 1

1 2
Dra.Pilar Nuñez Blas 7
Matlab Unasam

2 1

2 2

2 3

2 4

Decisiones múltiples (instrucción switch)

Sentencia switch

La sentencia swith realiza una función análoga a un conjunto de if… elseif


concatenados

switch switxch_ expresión

case case_expre1,

bloque1

case{case_expre2, case_expre3, case_expre4,…}

bloque2

otherwise, %opcion defecto

bloque 3

end

Ejemplo

function numero

x=input(‘Ingrese el valor de x=’);

if x>0

opción=1;

else

Dra.Pilar Nuñez Blas 8


Matlab Unasam

opción=2;

end

switch opción

case 1

disp(‘x número positive);

case2

disp(‘x número negativo);

otherwise

disp(‘x es nulo)

end

Ejemplo: Escriba el siguiente programa para instrumentar la definición:

 3, x 1

y = 2x  1, x  2,3,4
 ex,
 otro x

x=input('dato ');
switch x
case 1,
y=3;
case {2,3,4},
y=2*x+1;
otherwise
y=exp(x);

Dra.Pilar Nuñez Blas 9


Matlab Unasam

end
disp(y);
ejercicios

Dra.Pilar Nuñez Blas 10

Вам также может понравиться