0% encontró este documento útil (0 votos)
44 vistas9 páginas

4.1 Programacion y Algo

Este documento presenta los fundamentos de las estructuras de programación en MATLAB, incluyendo funciones como input y disp, el uso de find para encontrar índices, estructuras de selección como if/else y switch/case, y estructuras de repetición como bucles for y while. Se explican conceptos como break y continue para controlar el flujo de bucles.

Cargado por

Rubén Correa
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
44 vistas9 páginas

4.1 Programacion y Algo

Este documento presenta los fundamentos de las estructuras de programación en MATLAB, incluyendo funciones como input y disp, el uso de find para encontrar índices, estructuras de selección como if/else y switch/case, y estructuras de repetición como bucles for y while. Se explican conceptos como break y continue para controlar el flujo de bucles.

Cargado por

Rubén Correa
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 9

CURSO DE FUNDAMENTOS DE MATLAB

MÓDULO 4 ESTRUCTURAS DE PROGRAMACIÓN EN MATLBA

Funciones input, disp find

alturas=[63 78 65 45 75];

El comando find encuetra los indices de los elementos que satisfacen un criterio

aceptado=find(alturas>=66)

aceptado = 1×2
2 5

Si se quiere saber cuáles son los numero o los valores reales de los elementos utilizamos la siguiente
expresión

alturas(aceptado)

ans = 1×2
78 75

El comando input y disp, nos permite ingresar un dato o visualizar un mesanjes

prompt= 'digite el valor '

prompt =
'digite el valor '

x=input(prompt)

x = 3

disp('el valor es incorrecto')

el valor es incorrecto

Ejemplo:

1
Defina la matriz y encuentre los números índice de los elementos en la columna 1 que sean mayores que 66.
Entonces se encuentra cuáles de dichos elementos en la columna 2 son también mayores que o iguales a 18 y
menores que o iguales a 35.

dat=[63,18;67,19;65,18;72,20;69,36;78,34;75,12]

dat = 7×2
63 18
67 19
65 18
72 20
69 36
78 34
75 12

elem= find(dat(:,1)>=66 & dat(:,2)>=18 & dat(:,2)<35)

elem = 3×1
2
4
6

disp('Los siguientes son los datos que cumplen los criterios exigidos: ')

Los siguientes son los datos que cumplen los criterios exigidos:

dat(elem)

ans = 3×1
67
72
78

Estructuras de selección ( IF and IFELSE )

una estructura if simple tiene la siguiente forma:

if enunciados de comparacion

end

count=0;
promt='ingrese el valor de g'

promt =
'ingrese el valor de g'

g=input(promt)

g = -1

if g<50
count=count+1
disp(count)
end

count = 1
1

2
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 conjuto de eneunciados si la comparación es
verdaderea y un conjunto de enunciados si la comparación es falsa.

k=input(promt)

k = 3

if k>0
y = log(g)
else
disp('la entrada a la función log debe ser positiva')
end

y = 0.0000 + 3.1416i

la estructura elseif

cuando se anida varios niveles de enunciados if/esle, puede ser difícil determinar cuáles expresiones lógicas
deben ser verdaderas (o falsas) con la finalidad de ejecutar cada conjutno de enenciados.

en las sentencias u expresiones lógicas podemos utilizar operadores racionales o lógicos

Racionales

existen otros tipo de operadores lógicos, Operadores Lógicos de MATLAB

3
m='ingrese la edad';
age=input(m)

age = 80

if age < 16
disp('Lo siento eres menor de edad')
elseif age < 18
disp('Puedes obtener licencia de conductor provisional')
elseif age<70
disp('Tu liciencia de conducir es estandar')
else
disp('los mayores de 70 requieren una licencia especial')
end

Estructura de decisión switch y case

se usa con frecuencia cuando existe una serie de opciones de ruta de programación para una variable dada,
dependiendo de su valor. Es similar a la de if/else/elseif

switch variable (variable == opcion1)

case opción1

código a ejecutar

4
case opción_n

codigo a ejecutar

otherwise

codigo a ejecutar

end

m='Ingrese el nombre de la ciudad en apostrofe'


ciudad = input(m)
switch ciudad
case 1
disp('costo de pasaje es 30000 pesos');
case 2
disp('el costo de pasaje es 40000 pesos')
otherwise
disp('No es destino')
end

Estructuras de repetición: Bucles

Se usan cuando necesita repetir un conjunto de instrucciones muchas una cantidad definida. MATLAB soporta
dos tipos diferentes de bucles: el bucle for y el bucle while.

BUCLE FOR:

su estructura es simple. la primera línea identifica el bucle y un índice que es su número que cambia en cada
paso a través del bucle. Después de la línea de identificación viene el grupo de comandos que se quiere
ejecutar.

for index = [matrix]

comandos a ejecutar

end

for k=[1,3,7,10,20]
k
end

k = 1
k = 3
k = 7
k = 10
k = 20

otra ejemplo

for k=1:7
a=2*k
end

a = 2
a = 4

5
a = 6
a = 8
a = 10
a = 12
a = 14

una de las formas más comunes de usar un bucle for es para definir una nueva matriz.

for k= 1:5
for l= 1:5
a(k,l)= k^2
end

end

a = 1
a = 1×2
1 4
a = 1×3
1 4 9
a = 1×4
1 4 9 16
a = 1×5
1 4 9 16 25

SUGERENCIA:

La mayoría de cómputo no tiene la habilidad de MATLAB para manipular matrices fácilmente: por tanto, se
apoyan en bucles similares al recién presentado prar definir arreglos, Sería mas fácil crear el vector a en
MATLAB de la siguiente forma:

k=1:5

k = 1×5
1 2 3 4 5

a=k.^2

a = 1×5
1 4 9 16 25

Bucles While

son similares a los bucles for. La gran diferencia es la forma en que MATLAB decide cuántas veces repetir el
bucle. Los bucles while continúan hasta que se satisfacen algún criterio.

while criterio

comandos a ejecutar

end

k=0;
while k<3
k=k+1
end

6
k = 1
k = 2
k = 3

Genralmente se interpre que mientras se cumple la sentencia, ejecuta una serie de instrucciones u
operaciones

puntos= [79,45,98,97];
cont=0;
k=0;
while k<4
k=k+1
if puntos (k)>90
cont=cont+1
end
end
%disp (cont)

Break y continue

El comando break se puede usar para terminar un bucle prematuramente.

m='ingrese un valor mayor que cero'

m =
'ingrese un valor mayor que cero'

n=0;
while (n<10)
n=n+1;
a=input(m)
if (a<=0)
disp('debe ingresar un número positivo')
disp('Este programa terminará')
break
end
disp('El log natural de este número es ')
disp(log(a))
end

a = 3
El log natural de este número es
1.0986
a = 6
El log natural de este número es
1.7918
a = 2
El log natural de este número es
0.6931
a = 6
El log natural de este número es
1.7918
a = 8
El log natural de este número es
2.0794

7
a = 5
El log natural de este número es
1.6094
a = 6
El log natural de este número es
1.7918
a = -9
debe ingresar un número positivo
Este programa terminará

El comando continue es similar break; sin embargo, en lugar de terminar el bucle, el programa sólo salta el
paso al siguiente:

m='ingrese un valor mayor que cero'

m =
'ingrese un valor mayor que cero'

n=0;
while (n<10)
n=n+1;
a=input(m)
if (a<=0)
disp('debe ingresar un número positivo')
disp('Intentalo de nuevo')
continue
end
disp('El log natural de este número es ')
disp(log(a))
end

a = -3
debe ingresar un número positivo
Intentalo de nuevo
a = -6
debe ingresar un número positivo
Intentalo de nuevo
a = -8
debe ingresar un número positivo
Intentalo de nuevo
a = 8
El log natural de este número es
2.0794
a = 8
El log natural de este número es
2.0794
a = 9
El log natural de este número es
2.1972
a = 6
El log natural de este número es
1.7918
a = 9
El log natural de este número es
2.1972
a = 2
El log natural de este número es
0.6931
a = 6
El log natural de este número es

8
1.7918

También podría gustarte