0% encontró este documento útil (0 votos)
20 vistas

Lab2504 1d1 1d4 Repetitiva

Cargado por

Milagros Ramirez
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 PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
20 vistas

Lab2504 1d1 1d4 Repetitiva

Cargado por

Milagros Ramirez
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 PPTX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 44

INFORMÁTICA I

Unidad 2. Introducción al diseño de


algoritmos y lógica de programación

• Estructuras Repetitiva
 Mientras
• Acumuladores y
contadores
¿Hasta aquí qué hicimos?
EL cociente entre dos números El pago a UN empleado

Inicio Inicio

Definir num1,num2 Como Entero Definir cod Como Entero


Definir cociente Como Real Definir cant, pago Como Real

num1, num2 cod, cant

F V
cociente=num1/num2 cod == 1

pago = cant * 3,8 pago = cant * 4,5


Cociente

pago
Fin
Fin
¿Hasta aquí qué hicimos?
EL cociente entre dos números El pago a UN empleado Peeeero….
¿Qué pasa si quisiera
Inicio Inicio
calcular el promedio
de varios cocientes o
Definir num1,num2 Como Entero Definir cod Como Entero el sueldo total entre
Definir cociente Como Real Definir cant, pago Como Real varios empleados?

num1, num2 cod, cant

F V
cociente=num1/num2 cod == 1

pago = cant * 3,8 pago = cant * 4,5


Cociente

pago
Fin
Fin
¿Hasta aquí qué hicimos?
EL cociente entre dos números El pago a UN empleado Peeeero….
¿Qué pasa si quisiera
Inicio Inicio
calcular el promedio
de varios cocientes o
Definir num1,num2 Como Entero Definir cod Como Entero el sueldo total entre
Definir cociente Como Real Definir cant, pago Como Real varios empleados?

num1, num2 cod, cant

F V
cociente=num1/num2 cod == 1

pago = cant * 3,8 pago = cant * 4,5


Cociente

pago
Fin
Fin
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

ILUSTRACIÓN

Leer un número e imprimir


“n1 es mayor a cero”,
cuando lo sea. Reiterar
esta operación mientras el
número ingresado sea
mayor a cero.
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

Inicio ILUSTRACIÓN
Entero: n1

n1 Leer un número e imprimir


“n1 es mayor a cero”,
cuando lo sea. Reiterar
n1 > 0 esta operación mientras el
número ingresado sea
mayor a cero.
“n1 es mayor a
cero”

Fin
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

Inicio ILUSTRACIÓN
Entero: n1

n1 Leer un número e imprimir


“n1 es mayor a cero”,
cuando lo sea. Reiterar
n1 > 0 esta operación mientras el
número ingresado sea
mayor a cero.
“n1 es mayor a
cero”

NO me permite reiterar la operación, la realiza sólo


una vez y llega al FIN del algoritmo.
Fin
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1 ILUSTRACIÓN

n1 > 0
f Leer un número e imprimir
“n1 es mayor a cero”,
cuando lo sea. Reiterar
v
“n1 es mayor a
esta operación mientras el
número ingresado sea
cero” mayor a cero.

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
56

v
“n1 es mayor a
cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
56

v
“n1 es mayor a
cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
56

v
“n1 es mayor a
“n1 es mayor a cero”

cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
56
182

v
“n1 es mayor a
“n1 es mayor a cero”

cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
182

v
“n1 es mayor a
cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
182

v
“n1 es mayor a
“n1 es mayor a cero”

cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
0182

v
“n1 es mayor a
“n1 es mayor a cero”

cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
0

v
“n1 es mayor a
cero”

n1
...
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

...
n1

n1 > 0
f Introducir n1
0

v
“n1 es mayor a
cero”

n1
...
Estructura Repetitivas

Son necesarias para cuando es requerido repetir un número dado de instrucciones.

Las estructuras que repiten una secuencia de instrucciones un número determinado de


veces se denominan bucles y se denomina iteración al hecho de repetir la ejecución de una
secuencia de acciones.

Las dos principales preguntas a realizarse en el diseño de un bucle son:


¿Qué contiene el bucle? y ¿,Cuántas veces se debe repetir?

Para ello necesitaremos conocer algún medio para detener el bucle.

Estructuras repetitivas
1- Mientras
2- Repetir – Hasta
3- Desde / Para
Estructura Repetitiva “Mientras” (o Mientras – Hacer)

f
BUCLE O LAZO
(“LOOP”)
Condiciones
SALIDA DEL

v BUCLE

Acciones

ITERACIÓN (cada
repetición del bucle)
Estructura Repetitiva “Mientras” (o Mientras – Hacer)
No se conoce la cantidad de elementos Condición de salida
a procesar. al INICIO del bucle.

f
BUCLE O LAZO
(“LOOP”)
Condiciones
SALIDA DEL

v BUCLE

Acciones

ITERACIÓN (cada
repetición del bucle)

Entro al bucle MIENTRAS la condición es


verdadera.
Representación de estructura repetitiva MIENTRAS

Instrucción Diagrama de Flujo Pseudo-código

F Mientras condición Hacer


Mientras Secuencia de acciones
V
FinMientras
Estructura Repetitiva: Mientras
• Problema:
– Se desea obtener el cociente de dos números enteros, para una serie
o conjunto de números (se desconoce cuántos). No realizar la
división en caso que el divisor sea cero y mostrar el error. El cociente entre pares
de números se ejecutará tantas veces como se requiera, y se
detendrá la operación cuando se ingrese el número 999 como
primer número.
• Salidas
– Cociente
• Entradas
– Dos números entero: definir variables num1 y num2
• Condición de salida
num1=999 23
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V

Acciones
por falso
Acciones
por
verdadero
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
num2
F V
num2<>0
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
num2
F V
num2<>0
Cociente=num1/num2
«No se puede
dividir por cero»
Cociente
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
num2
F V
num2<>0

«No se puede Cociente=num1/num2


dividir por cero»
Cociente

num1

Lectura para
nueva iteración
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
num2
F V
num2<>0

«No se puede Cociente=num1/num2


Cuerpo dividir por cero»
del bucle Cociente

num1

Lectura para
nueva iteración
Estructura Repetitiva: Mientras Incio
Condición de
• Diagrama de flujo Definir num1,num2 como Entero salida
F Definir Cociente como Real del bucle
V 1er lectura num1
F
num1<>999
V
num2
F V
num2<>0

«No se puede Cociente=num1/num2


Cuerpo dividir por cero»
del bucle Cociente

Ejerc_Intro_Mientras.psc num1

Lectura para
nueva iteración Fin
Inicio
Estructura general de
algoritmo con repetitiva
Declaración e inicialización de
variables
“Mientras”

1ra lectura para


condición SALIDA DEL
BUCLE
F
2 Condición

Procesos/Impresiones fuera del


Cuerpo del bucle bucle

Fin
BUCLE (n iteraciones) 2
Estructuras Repetitivas

Ejercicio – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros, los cuales deberán
estar en el rango [0-100], sin incluir los extremos.

Se pide generar las siguientes Salidas, cada vez que un número ingresado
cumpla con las condiciones necesarias para cada caso:
• Mostrar la leyenda “número mayor a 50”.
• Mostrar la leyenda “número menor o igual a 50”.
• Mostrar leyenda “número fuera de rango”.

Para ello Ud. dispone de las siguientes Entrada:


• Número (nro): representa el número a ingresar.

Considerar que deberá ingresar números, hasta que el usuario ingrese un


número 0.
INFORMÁTICA I
Unidad 2. Introducción al diseño de
algoritmos y lógica de programación

• Estructuras Repetitiva
 Mientras
• Contadores y
Acumuladores
CONTADOR

Variable que a partir de un valor inicial, aumenta o disminuye en una


cantidad constante, cada vez que es calculada.
Forma General
contador = valor inicial
contador = contador + paso
paso es el valor constante que se suma o resta en cada repetición
CONTADOR

Variable que a partir de un valor inicial, aumenta o disminuye en una


cantidad constante, cada vez que es calculada.
Forma General
contador = valor inicial
contador = contador + paso
paso es el valor constante que se suma o resta en cada repetición

Ejemplo
Una variable contador de la cantidad de recibos ingresados a un algoritmo podría inicializarse en cero,
como en expresión 1, y luego ir actualizándose en cada iteración según la expresión 2:
Inicialización de la variable contadorRecibos.
(1) contadorRecibos = 0 Proceso antes de ingresar a bucle.
(2) contadorRecibos = contadorRecibos + 1 Proceso que estará
dentro del bucle.
ACUMULADOR

Variables que a partir de un valor inicial, aumentan o disminuyen en una cantidad


NO constante. Utilizada para sumar o restar cantidades.
Forma General
acumulador = valor inicial
acumulador = acumulador + cantidad
Cantidad es la variable que se suma o resta en cada repetición
ACUMULADOR

Variables que a partir de un valor inicial, aumentan o disminuyen en una cantidad


NO constante. Utilizada para sumar o restar cantidades.
Forma General
acumulador = valor inicial
acumulador = acumulador + cantidad
Cantidad es la variable que se suma o resta en cada repetición

Ejemplo
Una variable acumuladora de la cantidad de litros de agua consumidos, podría inicializarse en cero, como en
expresión 1, y luego ir actualizándose según el valor de la variable litros, en cada iteración según la expresión 2:
Inicialización de la variable acumuladorLtros.
(1) acumuladorLtros = 0
Proceso antes de ingresar a bucle.
(2) acumuladorLtros = acumuladorLtros + litros Proceso que estará
dentro del bucle.
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.
• Mostrar el porcentaje de números mayores a 10.

Para ello Ud. dispone de las siguientes Entrada:


• Número (nro): representa el número a ingresar.

Considerar que deberá ingresar números, hasta que el usuario


ingrese un número 0.
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.
• Mostrar el porcentaje de números mayores a 10.

Para ello Ud. dispone de las siguientes Entrada:


• Número (nro): representa el número a ingresar.

Considerar que deberá ingresar números, hasta que el


usuario ingrese un número 0.
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.

¿Cómo llegamos al promedio


general?
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.

prom = acumNum/cantNum
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.

prom = acumNum/cantNum

cantNum = cantNum + 1

acumNum = acumNum + nro


Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.

prom = acumNum/cantNum

cantNum = cantNum + 1

acumNum = acumNum + nro

Ejerc#3_RepMientras_Promedio.psc
Problema #3 – Repetitiva Mientras
Inicio
Definir nro, acumNum,cantNum como Entero
Definir prom como real
acumNum=0
cantNum=0

nro
ACUMULADOR
F
nro <> 0
V prom = acumNum/cantNum
acumNum = acumNum + num

prom
cantNum = cantNum + 1

nro Fin

CONTADOR
Estructuras Repetitivas

Problema #3 en guía – Repetitiva Mientras

Ud. deberá procesar una serie de números enteros.

Se pide generar las siguientes Salidas por Impresora:


• Mostrar el promedio general de los números ingresados.
• Mostrar el porcentaje de números mayores a 10.

¿Cómo llegamos al porcentaje?

También podría gustarte