Publicado el 23 de Agosto del 2019
2.292 visualizaciones desde el 23 de Agosto del 2019
559,6 KB
22 paginas
Creado hace 9a (13/11/2014)
BLOQUE TEMÁTICO II
TEMA 5
TEMA 5. PROGRAMACIÓN BÁSICA EN MATLAB ®/OCTAVE
5.1. Introducción a Matlab y Octave
5.2. Entrada y salida con formato
5.3. Programas: script y funciones
5.4. Estructuras alternativas o condicionales
5.5. Estructuras repetitivas o bucles
5.6. Aplicación de MATLAB ® / Octave a casos prácticos de ingeniería
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVAS O BUCLES
• UN BUCLE ES UNA ESTRUCTURA DE PROGRAMACIÓN QUE PERMITE LA
REPETICIÓN CONTROLADA DE UN CONJUNTO DE INSTRUCCIONES.
• OCTAVE DISPONE DE LAS SIGUIENTES ESTRUCTURAS REPETITIVAS:
for (para)
while (mientras)
do-until (repetir…hasta)
• ESTE TIPO DE ESTRUCTURAS, Y EN PARTICULAR LAS INSTRUCCIONES while y for
SON UTILIZADAS DE FORMA GENERALIZADA EN LA INMENSA MAYORÍA DE LOS
LENGUAJES DE PROGRAMACIÓN.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVA: bucles for
• EL BUCLE for SE UTILIZA CUANDO NOS INTERESA REPETIR UN BLOQUE DE
INSTRUCCIONES UN NÚMERO PREDETERMINADO DE VECES.
• LA ESTRUCTURA for ES DE LA SIGUIENTE FORMA:
for i = vector
instrucciones
end
• EL CONJUNTO DE INSTRUCCIONES SE REPITE PARA CADA ELEMENTO DEL
VECTOR, DENOMINÁNDOSE ITERACIÓN A CADA UNA DE ESTAS REPETICIONES.
• EN CADA ITERACIÓN, i TOMA DE FORMA ORDENADA EL VALOR DE CADA
ELEMENTO DEL VECTOR (SI ES UNA MATRIZ, CADA CICLO i ES UNA COLUMNA DE
DICHA MATRIZ) .
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
Ejemplo:
for i = [1:5]
j=2.*i
disp(j)
Por pantalla se mostrará: ans = 2 4 6 8 10
end
• EL OPERADOR “:” ES MUY USADO EN LOS BUCLES for. EN ESTE CASO, LOS
BUCLES TENDRÁN LA SIGUIENTE ESTRUCTURA (LOS CORCHETES NO SON
NECESARIOS):
for i = [inicial:incremento:final]
instrucciones
end
Ejemplo 28: Usar un bucle for para calcular los cuadrados de los cinco primeros
números impares.
for i = [1:2:9]
j=2.*i
disp(j)
end
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
Ejemplo 29: Escribir un programa que sume los elementos de un vector.
DEFINIMOS EL VECTOR
• EL ERROR SE DEBE A NO INICIALIZAR LA VARIABLE SUMA (ACUMULADOR).
AL EJECUTAR EN OCTAVE DA UN ERROR
INICIALIZAMOS SUMA
EL PROGRAMA NO DA ERROR
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
Ejemplo 30: Escribir un programa que sume los elementos de un vector y calcule la
media (EMPLEAR UN CONTADOR).
INICIALIZAMOS EL CONTADOR Y EL
ACUMULADOR
EN EL BUCLE AUMENTAMOS EN UNA
CANTIDAD CONSTANTE EL CONTADOR
CON EL ACUMULADOR Y EL
CONTADOR HACEMOS LA MEDIA
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
ESTRUCTURAS REPETITIVA: bucles for
length
PARA OBTENER
SIRVE
ELEMENTOS DE UN VECTOR.
ES MUY UTILIZADO EN LOS BUCLES for EN LOS
QUE NO SABEMOS LA LONGITUD DEL VECTOR.
EL NÚMERO DE
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II 5.4. Estructuras alternativas o condicionales
ESTRUCTURAS REPETITIVA: bucles for
En un bucle for sino guardamos los datos de cada una de las repeticiones en una
variable, el resultado del bucle será el ultimo dato que ha calculado en dicho
bucle.
No guardamos los
resultados de cada bucle
El ultimo dato del buce es 100 ,
con ello hace el siguiente calculo
que esta fuera del bucle
Con nombre_variable(i)
guardamos los resultados
de cada bucle
El cálculo fuera del bucle se
ejecuta con todos los datos
generados en el bucle
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVA: bucles while
• EL BUCLE while ES UNA ESTRUCTURA QUE SE UTILIZA PARA REPETIR UN
CONJUNTO DE INSTRUCCIONES MIENTRAS SE CUMPLA UNA CONDICIÓN LÓGICA
DETERMINADA.
• LA ESTRUCTURA while ES DE LA SIGUIENTE FORMA:
while condicion
instrucciones
end
• MIENTRAS LA CONDICIÓN ES VERDADERA, SE EJECUTAN LAS INSTRUCCIONES,
TRAS LO CUAL SE VUELVE A COMPROBAR LA CONDICIÓN. EN EL MOMENTO QUE
ES FALSA, SE TERMINA EL BUCLE.
• LA VARIABLE QUE SE EVALÚA DEBE CAMBIAR CADA VEZ QUE SE REPITE EL
BUCLE, DE LOS CONTRARIO SERÍA UN CICLO INFINITO.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVA: bucles while
Ejemplo:
i=0
while i < 3
disp(i)
i=i+1
end
disp(‘Fin del programa’)
• PARA LAS CONDICIONES while SE PUEDEN UTILIZAR TODOS LOS OPERADORES
Y FUNCIONES LÓGICAS ESTUDIADOS.
• EL BUCLE for SE USA CUANDO SE QUIEREN REPETIR LAS INSTRUCCIONES UN
NÚMERO PREDETERMINADO DE VECES Y while BUSCA EL CUMPLIMIENTO DE
UNA CONDICIÓN PARA LA FINALIZACIÓN DEL CICLO.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVA: bucles do-until
• EL BUCLE do-until (REPETIR HASTA) ES MUY SIMILAR AL BUCLE while, LA
FINALIZACIÓN DE BUCLE ESTA LIGADA AL CUMPLIMIENTO DE UNA CONDICIÓN.
• EL BUCLE do-until LA CONDICIÓN SE COMPRUEBA AL FINAL DE LA
ESTRUCTURA Y SE EJECUTAN LAS ORDENES HASTA QUE SE CUMPLE LA
CONDICIÓN (Y NO MIENTRAS, COMO OCURRE EN while).
• LA ESTRUCTURA do-until ES DE LA SIGUIENTE FORMA:
do
instrucciones
until condicion
• LAS INSTRUCCIONES DEL BUCLE SE EJECUTAN AL MENOS UNA VEZ.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVA: bucles do-until
Ejemplo: mostrar números por pantalla hasta que llegue al número 3
i=0
do
disp(i)
i=i+1
until i>2
disp(‘Fin del programa’)
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
for
while
do-while
SELECCIÓN DEL TIPO DE BUCLE
REPETICIÓN DE UN CONJUNTO DE INSTRUCCIONES
UN NÚMERO PREDETERMINADO DE VECES.
INCUMPLIMIENTO DE UNA CONDICIÓN AL INICIO
DEL BUCLE PARA LA FINALIZACIÓN DEL CICLO. LAS
INSTRUCCIONES DEL BUCLE SE EJECUTAN 0 O MÁS
VECES.
CUMPLIMIENTO DE UNA CONDICIÓN AL FINAL DEL
BUCLE PARA LA FINALIZACIÓN DEL CICLO. LAS
INSTRUCCIONES DEL BUCLE SE EJECUTAN 1 O MÁS
VECES.
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVAS O BUCLES
break
Ejemplo:
n=0
while (n<10)
SE UTILIZA PARA TERMINAR UN BUCLE
PREMATURAMENTE UNA VEZ NO SE CUMPLA LA
CONDICIÓN, PARA QUE NO CONTINÚE
HACIENDO EL BUCLE.
a=input(‘Ingrese un valor mayor que cero’)
n=n+1
if a<=0
disp(‘Debe ingresar un numero positivo’)
break
end
disp(‘El logaritmo de este número es’)
disp(log(a))
end
CUANDO SE INTRODUCE UN NÚMERO
NEGATIVO NO SE REPITE MAS EL BUCLE
1º Grado en IQ, IQ+IA, IQ+IOI
INF. APLICADA
BLOQUE II
5.5. Estructuras repetitivas o bucles
ESTRUCTURAS REPETITIVAS O BUCLES
continue
SE UTILIZA PARA CONTINUAR UN BUCLE AUNQUE
NO SE HAYA CUMPLIDO LA CONDICIÓN.
Ejemplo:
n=0
while (n<10)
a=input(‘Ingrese un valor mayor que cero’)
n=n+1
if a<=0
disp(‘Debe ingresar un numero positivo’)
continue
end
disp(‘El logaritmo de este número es’)
disp(log(a))
end
CUANDO SE INTRODUCE UN NÚME
Comentarios de: 5.5. Estructuras repetitivas o bucles - Programación básica en Matlab (0)
No hay comentarios