Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Estructura de control: Bucles, Apuntes de Algoritmos y Programación

En este documento se presentan las estructuras repetitivas llamadas bucles, las cuales permiten ejecutar una o más sentencias cero o más veces. Se exploran diferentes tipos de bucles como while, for ascendente y for descendente, y se muestran ejemplos de cómo usarlos en vba. El documento también aborda la motivación por la que se necesitan estas estructuras y cómo se pueden utilizar para resolver problemas comunes.

Tipo: Apuntes

2020/2021

Subido el 15/03/2021

usuario desconocido
usuario desconocido 🇲🇽

7 documentos

1 / 4

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
LSI 1
5: Estructura repetitivas. Bucles
LSI 2
Motivación
Hasta ahora sólo podemos ejecutar las
sentencias una o cero veces
A menudo necesitamos ejecutar una
sentencia o grupo de sentencias cero, una
o más veces
¿Cómo se puede construir un programa que
muestre por pantalla los números de 1 a 100 sin
copiar el código innecesariamente?
LSI 3
Motivación
En ocasiones, un programa necesita repetir
una serie de acciones:
Mientras se cumpla una condición
Cero o más veces
Hasta que [no] se cumpla una condición
Una o más veces
–Un número conocido de veces
LSI 4
Diagramas de flujo de bucles
condición no
Acciones
Mientras condición
no
Acciones
Hasta
i <= n no
i = inicio
i = i+salto
i: entero
Acciones
n veces
pf3
pf4

Vista previa parcial del texto

¡Descarga Estructura de control: Bucles y más Apuntes en PDF de Algoritmos y Programación solo en Docsity!

LSI^

1

5: Estructura repetitivas. Bucles

LSI^

Motivación „^ Hasta ahora sólo podemos ejecutar lassentencias

una

o^ cero

veces

„^ A menudo necesitamos ejecutar unasentencia o grupo de sentencias

cero

,^ una

o^ más veces „ ¿Cómo se puede construir un programa quemuestre por pantalla los números de 1 a 100 sincopiar el código innecesariamente?

LSI^

3

Motivación „^ En ocasiones, un programa necesita repetiruna serie de acciones:–

Mientras

se cumpla una

condición

-^ Cero o más

veces

-^ Hasta

que [no] se cumpla una

condición

-^ Una o más

veces

  • Un

número

conocido

de veces

LSI^

Diagramas de flujo de bucles

condición

no (^) sí Mientras Acciones

condición

no sí

Hasta Acciones

i <= n

no i = inicio sí i = i+salto i: entero

n^ veces Acciones

LSI^

5

For (nº repeticiones conocido) For^

índice

=^ valor inicial

To^ valor final

[ Step

expresión

]

grupo de sentencias Next^ [

índice

]

„^ índice

cogerá los valores de

valor inicial

hasta

valor final

„^ expresión

se evaluará para determinar la cantidad a incrementar o decrementar

cada vez que se ejecuta

Next

índice NOTA: Los valores del

índice

los cambia el

For

automáticamente con la instrucción

Next

. El programador

nunca debe manipular el valor del

índice

LSI^

Diagrama de flujo: for ascendente

Inicio i <= 10Escribir i Fin

no i = 1 sí i = i+

i: entero

LSI^

7

Diagrama de flujo: for descendente

Inicio i>=1 Escribir i Fin

no i = 10 sí i=i+^

−^1

i: entero

LSI^

For. Ascendente y descendente „^ Ascendente^ Dim

i^ As Integer For i = 1

To

^10

Step

^1

MsgBox(i) Next

i

„^ Descendente^ Dim

i^ As Integer For i = 10

To ^1 Step -

MsgBox(i) Next

i

LSI^

13

Diagrama de flujo:Do ... Loop Until

Inicio num = 0Escribe digFin Escribe ("Introduce un número")Lee numdig =0num = num\10dig = dig + 1num = num \ 10no

num: largodig: entero

LSI^

Do .. Loop Until. Ejemplo

Dim num

As Long Dim dig

As Integer num = InputBox("Introduce un número")dig = 0 Do

dig = dig + 1rdo = rdo \ 10 Loop Until

num = 0

MsgBox (dig)

LSI^

15

Diagrama de flujo: Do...Loop While

Inicio num <> 0Escribe digFin Escribe ("Introduce un número")Lee numdig =0num = num\10dig = dig + 1num = num \ 10sí

no

num: largodig: entero

LSI^

Dim num

As Long Dim dig

As Integer num = InputBox("Introduce un número")dig = 0 Do

dig = dig + 1num = rdo \ 10 Loop While

num <> 0

MsgBox (dig)

Do .. Loop While. Ejemplo