0% encontró este documento útil (0 votos)
52 vistas29 páginas

Tema 07 Estructuras Repetitivas

El curso de Pensamiento Computacional se centra en el uso de estructuras repetitivas, como contadores y acumuladores, para elaborar pseudocódigos y diagramas de flujo aplicados a problemas matemáticos y físicos. Se explican las diferencias entre contadores y acumuladores, así como las estructuras repetitivas 'Para', 'Mientras' y 'Repetir-Hasta Que', con ejemplos prácticos de su implementación en pseudocódigo. Además, se presentan casos de uso que ilustran la aplicación de estas estructuras en la programación.
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)
52 vistas29 páginas

Tema 07 Estructuras Repetitivas

El curso de Pensamiento Computacional se centra en el uso de estructuras repetitivas, como contadores y acumuladores, para elaborar pseudocódigos y diagramas de flujo aplicados a problemas matemáticos y físicos. Se explican las diferencias entre contadores y acumuladores, así como las estructuras repetitivas 'Para', 'Mientras' y 'Repetir-Hasta Que', con ejemplos prácticos de su implementación en pseudocódigo. Además, se presentan casos de uso que ilustran la aplicación de estas estructuras en la programación.
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

CURSO: PENSAMIENTO COMPUTACIONAL

Tema: Estructuras Repetitivas

Docente: María Vilma Escobar Castillo

Arequipa - Perú
2025
Objetivos de la sesión

• Elaborar pseudocódigos y diagramas de flujo con estructuras repetititvas,


empleando contadores y acumuladores.
• Elaborar pseudocódigos y diagrama de flujo con estructuras repetititivas
aplicados a casos matemáticos y físicos.
Variables de control

● Las variables de control son variables que se utilizan en estructuras de


control, como bucles o condicionales, para controlar el flujo de ejecución
de un programa.

¿Para qué sirven las variables de control?


● Contadores: llevar la cuenta de las iteraciones o eventos.
○ Ejemplo: Contar cuántas veces se ingresa un número positivo.

● Acumuladores: acumular una suma o total de valores.


○ Ejemplo: Sumar todos los números ingresados por un usuario.
Contadores

• Un contador es una variable que se incrementa o disminuye en un


valor constante.
• Se puede usar para contar la cantidad de personas en un ambiente,
o la cantidad de productos en un almacén.
• Un contador tiene la siguiente forma:
contador <- contador + valor constante

• Ejemplos en pseudocódigo:
j <- j + 2
i <- i – 1
carros <- carros + 1
Acumuladores

• Un acumulador o totalizador es una variable cuya misión es el


almacenamiento de cantidades variables de procesos sucesivos.
• La diferencia con el contador radica en que el incremento o disminución
del acumulador es variable. Por ejemplo, la suma del dinero recaudado
por un parquímetro durante una semana, ya que no recauda la misma
cantidad todos los días
• La forma general de un acumulador es la siguiente:
Acumulador <- acumulador + valor variable
• Ejemplos en pseudocódigo:
acum <- acum + i
suma <- suma + valor
resta <- resta + variable
Diferencias: Contador vs Acumulador
El contador primero va aumentando o El acumulador va aumentando o
decrementando de manera constante. decrementando en una cantidad variable.

i <- i + 2 j <- j + variable

NOTA: Los contadores y acumuladores deben inicializarse, generalmente en cero,


es decir antes de iniciar un bucle o ciclo se debe hacer lo siguiente:

i <- 0
j <- 0
¿Qué es una estructura repetitiva?

● Es una instrucción que permite ejecutar un conjunto de órdenes


varias veces.
○ Ejemplo:si quieres que la computadora muestre los números del 1 al 5, en
lugar de escribir cinco veces la orden de mostrar cada número, le dices con
una estructura repetitiva: "Muestra los números comenzando desde el 1
hasta llegar al número 5 avanzando de 1 en 1". La computadora entonces
repite la acción de mostrar un número, una vez para cada número, hasta
llegar al 5.
● Esta estructura actúa para simplificar acciones repetitivas sin
tener que escribir la misma orden muchas veces indicando
condiciones de inicio, fin y cómo avanzará.
Estructura repetitiva “Para”
• La instrucción “Para” es una estructura de control en programación que permite
repetir un bloque de código un número específico de veces.

Para contador <- inicio Hasta fin Con Paso valor Hacer
// Sentencias a
repetir FinPara

• contador: es una variable de tipo contador que se declara dentro de esta


estructura, pero puede ser declarada fuera (Definir contador Como
Entero)
• inicio: es el valor numérico inicial que toma el contador.
• fin: es el valor numérico final hasta el que llegará el contador.
• valor: valor numérico que define de cuánto en cuánto aumenta el contador
Estructura repetitiva “Para” – Funcionamiento
El contador i comienza en 0

• Si tenemos El contador i llega hasta 6

El contador i avanza de 2 en 2

Para i <- 0 Hasta 6 Con Paso 2 Hacer


Escribir “Valor de i: ”, i
FinPara

• Su equivalente en estructura secuencial sería:


Escribir “Valor de i: ”, 0
Escribir “Valor de i: ”, 2
Escribir “Valor de i: ”, 4
Escribir “Valor de i: ”, 6
Estructura repetitiva “Para” – Diagrama

• Si se omite el valor
El contador i comienza en 0
central (valor de paso)
por defecto se asume
que avanza de uno en
uno.
• El valor de paso, puede
ser negativo, en cuyo
caso la estructura en
lugar de avanzar
retrocede, se debe
validar que el valor final
es menor que el inicial
en ese caso
El contador i avanza de 2 en 2

El contador i llega hasta 6


Caso: sumas sucesivas

Los números naturales son aquellos que usamos para contar y ordenar objetos. Son
una parte fundamental de las matemáticas y la programación.
Como parte de tu tarea de programación, se solicita que construyan un algoritmo en
pseudocódigo que sume los primeros 10 números naturales.
Al ejecutar el algoritmo, este debe imprimir el número 55, que es la suma de los
primeros 10 números naturales.
Resolución de caso: sin usar estructuras repetitivas

Proceso SUMA_DIEZ
Definir suma Como Entero
suma <- 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
Escribir “La suma de los primeros 10 números es ”, suma
FinProceso

Siguiendo mi solución anterior se puede calcular la suma de los primeros 10


naturales. Y si el problema cambia a los primeros 1000 números. ¿Se
debería seguir la misma lógica?
Resolución de caso: usando estructura
repetitiva

Proceso SUMA_DIEZ
Definir suma Como Entero
suma <- 0

Para i <- 1 Hasta 10 Hacer


suma <- suma + i
FinPara

Escribir “La suma de los primeros 10 números es ”, suma


FinProceso
Variante del caso: sumas sucesivas
del 1 al 1000
Proceso SUMA_MIL “suma” es una variable
Definir suma Como Entero de control de tipo
suma <- 0 acumulador, pues
aumenta según el valor
de una variable
Para i <- 1 Hasta 1000 Hacer
suma <- suma + i
FinPara

Escribir “La suma de los primeros 1000 números es ”, suma


FinProceso
Diagrama de flujo: sumas sucesivas del 1 al
10 y del 1 al 1000
¿Qué semejanzas y diferencias encuentras en el desarrollo?

Pseudocódigo para mostrar los números del 1 al 5 empleando la estructura


PARA y la estructura MIENTRAS
PARA y MIENTRAS

Estructura PARA Estructura MIENTRAS


La instrucción PARA es • La instrucción MIENTRAS se
conveniente cuando se conoce la debe emplear cada vez que se
cantidad de ciclos o veces que desconoce la
se va a repetir un proceso, o en cantidad de ciclos o veces
su defecto el valor final e inicial y que se va a repetir un
como va aumentando o proceso
disminuyendo. • Debemos declarar e inicializar sí
o sí al contador y hacer que
aumente o disminuya.
Estructura MIENTRAS

• La instrucción Mientras ejecuta una secuencia de instrucciones mientras la


condición que evalúa sea verdadera.
• Tiene la siguiente forma:

Mientras condición Hacer


// Sentencias a repetir
FinMientras

• Condición: Es una expresión lógica, si esta es verdadera se ejecutan las


sentencias, si es falsa se termina el proceso repetitivo.
Usos de la estructura MIENTRAS

● Ejecución repetitiva: Permite ejecutar un bloque de código


repetidamente mientras se cumpla una condición específica.
● Procesamiento de Datos: Es ideal para procesar colecciones de datos o flujos de
datos donde no se conoce la cantidad exacta de elementos o cuando el
procesamiento debe detenerse bajo ciertas condiciones.
● Bucles Infinitos Controlados: En algunos casos, se usa para crear bucles
infinitos donde el programa debe seguir funcionando hasta que se reciba una señal
para detenerse, como en servidores o aplicaciones de escucha continua.
Caso: mostrar valores pares con MIENTRAS

Los números pares son útiles porque permiten dividir la cantidad en partes iguales sin
romper los objetos originales. Por ejemplo, si tenemos un número par y lo dividimos a
la mitad, obtendremos dos partes iguales.
Como parte de tu tarea de programación, se solicita que construyan un algoritmo en
pseudocódigo que muestre los valores pares considerando el 0 hasta el par menor a
10 empleando la estructura MIENTRAS.
Al ejecutar el algoritmo, este debe mostrar: El valor de “a” es 0, luego 2 y así mientras
el que el valor de “a” sea menor a 10.
Resolución del caso
• Si tenemos:
Proceso DEMO_MIENTRAS
Variable contador a comienza en 0
Definir a Como Entero
Condición a evaluar
a <- 0
Mientras a < 10 Hacer El contador a aumenta de 2 en 2

Escribir “Valor de a: ”, a
a <- a + 2
FinMientras
FinProceso
Estructura repetitiva MIENTRAS –
diagrama
Variable
contador a • El punto central es la
comienza en 0 condición a evaluar, cuyo
formato en el diagrama de
flujo es el ROMBO, que
indica la evaluación de una
condición como en las
estructuras condicionales.
Condición a • Si la condición es FALSA,
evaluar se termina el bucle
• Si la condición es
VERDADERA, se repite el
bucle

El contador a
aumenta de 2
en 2
Estructura repetitiva REPETIR - HASTA QUE
• La instrucción Repetir-Hasta ejecuta una secuencia de instrucciones, siempre
que la condición evaluada sea falsa.
• Realiza el proceso por lo menos una vez, ya que evalúa la condición luego de
ejecutar el código.
• Se puede emplear para validar un dato ingresado por teclado sin que el
proceso haya finalizado.

Repetir
// Sentencias a repetir
Hasta Que condición

• Condición: es una expresión lógica, si el resultado es verdadero se termina la


estructura, pero si es falso, se repite el ciclo
Usos de la estructura REPETIR HASTA QUE

● Garantizar Ejecución Mínima: A diferencia de un bucle "MIENTRAS", el bucle


"REPETIR - HASTA QUE" garantiza que el bloque de código se ejecute al menos
una vez antes de verificar la condición. Esto es útil cuando el bloque de
código debe ejecutarse al menos una vez independientemente de la condición.
● Validación de Entradas: Se utiliza para validar entradas de usuario o de otros
sistemas. El programa puede repetir una solicitud de entrada hasta que el usuario
proporcione un dato válido.
Caso: convertir de negativo a positivo

Los números negativos son números que tienen un valor menor que cero. Se utilizan para representar
pérdidas, deudas, disminuciones o decrecimientos, entre otras cosas. Convertirlos a valores positivos
permite conocer el valor absoluto. Este es útil para evaluar la magnitud de los valores, además de su
dirección.
Por ejemplo, se puede usar para:
● Evaluar el sesgo en un sistema de medición
● Definir la distancia entre dos puntos cualesquiera de la recta real
Se solicita elaborar un pseudocódigo que sólo permita ingresar un número negativo y devuelva su
inverso. No se debe interrumpir el algoritmo si el valor ingresado no es negativo.
● Si se ingresa el valor 0, debe volver a pedir un número
● Si se ingresa el valor 10, debe volver a pedir un número
● Si se ingresa el valor -5, muestra su inversa: 5
Resolución del caso

• Si tenemos

Proceso DEMO_REPETIR
Definir num Como Entero Sentencias que se ejecutan
por lo menos una vez
Repetir
Escribir 'Ingrese un número negativo'
Leer num
Hasta Que num < 0
Condición a evaluar
Escribir 'Inverso ',-num
FinProceso
Resolución del caso en diagrama de flujo

Sentencias que
se ejecutan por
lo menos una
vez

Condición a
evaluar
¿Alguna consulta?
Gracias

También podría gustarte