Sunteți pe pagina 1din 28

ESTRUCTURAS

REPETITIVAS
EJEMPLOS

MENU DEL DIA


Repaso
condicionales.
Repaso ciclos.
Estructura
mientras.
Estructura para.
Problemas.
Variables.
Miscelnea de
ejemplos.

CONDICIONALES

DIAGRAMA DE
FLUJO

PSEUDOCODIGO

CONDICIONALES ESCENARIOS

Alabado
sea
Chuck
Norris.

CONDICIONALES ESCENARIOS
La forma de la estructura depende del problema
Ejemplo:
si el encuestado es mayor de edad se pregunta si es casado si no se pregunta si es
posee hermanos, se solicita la cantidad y se indaga si es el mayor de estos; si es
menor de edad despide al usuario

Variables:
edad: Edad.
estado: (0: soltero, 1: casado)
solo: (0: Tiene hermanos, 1:
Hijo nico)
num_hermanos: Numero de
hermanos.
mayor: (1: Es el mayor de los
hermanos, 0: No es el mayor
de los hermanos).

...
SI (edad >= 18) ENTONCES
...
SI (estado == 1) ENTONCES
...
SI_NO
SI (solo == 0) ENTONCES
...
SI (mayor == 1) ENTONCES
...
FIN_SI
...
FIN_SI
...
FIN_SI
SI_NO
ESCRIBA(suerte es que le digo)
FIN_SI

REPASO CICLOS

Empleado para la realizacin de tareas repetitivas.


Tiene 2 componentes principales, la cabecera y el cuerpo.
En la cabecera va la condicion que se evala para determinar la
repeticin o no del ciclo
El cuerpo contiene las instrucciones del ciclo que se repiten.

ESTRUCTURA MIENTRAS

DIAGRAMA DE
FLUJO

PSEUDOCODIGO

ESTRUCTURA PARA
DIAGRAMA DE
FLUJO

PSEUDOCODIGO

ESCRIBA(Digite 1 si...)
LEA(ban)
MIENTRAS (ban == 1) HAGA
...
ESCRIBA(Digite 1 si...)
LEA(ban)
FIN_PARA

ESCRIBA(Digite el dato...)
LEA(d)
MIENTRAS (d != -1) HAGA
...
ESCRIBA(Digite el dato...)
LEA(d)
FIN_PARA

ESCRIBA(Digite el ...)
LEA(N)
PARA (i=1:N:1) HAGA
...
FIN_PARA

total_recolectado

total_boletos

VIP: $7000
Normal: $5000

EJEMPLO 1 (Una sencilla


suma)
Realizar un programa que realice la
suma de los N primeros nmeros
usando la estructura MIENTRAS y
usando la estructura PARA.

Solucin en Pseint:
ejemplo1_mientras
ejemplo1_para

EJEMPLO 2 (Factorial de un
numero)

Implementando las estructuras PARA y MIENTRAS realizar


un algoritmo que calcule el factorial de un numero, es decir:
n! = n*(n-1)*(n-2)**3*2*1.

Mejore el programa anterior


de tal modo que le permita al
usuario repetir el proceso
cuantas veces desee.
Solucin en Pseint:
ejemplo2_mientras
ejemplo2_para
ejemplo2_mejorado_centinela.
ejemplo2_mejorado_bandera.

EJEMPLO 3
En una entidad crediticia, se necesita
tener actualizado el valor en pesos
que se han ingresado para cuentas
corrientes y cuentas de ahorros por
separado. Para n clientes del banco,
hacer un programa que le permita
saber el monto total consignado en
cuentas corrientes y el monto
consignado en cuentas de ahorros.
Validar que ninguno de los montos
ingresados sea negativo y de serlo no
tenerlo presente en la sumatoria y
contarlo paradespusmostrar que
porcentaje del total de
consignaciones fueron negativas.

Solucin en Pseint:
ejemplo3

EJEMPLO 4

Construya un algoritmo que permita


mostrar los nmeros enteros desde 0
hasta N. N debe ser positivo, si el usuario
lo ingresa negativo hay que modificarlo
(es decir volverlo positivo).
Modifique el anterior ejercicio para
mostrar los nmero enteros desde 0 hasta
-N. Si el usuario
ingresa
N positivo
Modifique
el anterior
ejercicio
para hay
queque
se muestren los nmeros
volverlo desde
negativo.
enteros
N hasta M. N debe ser menor que M y en caso
contrario se deben intercambiar.
Modifique el ejercicio anterior para que se muestren solo los
nmeros pares desde N hasta M.
Modifique el ejercicio anterior para que se muestren los nmeros
pares o impares segn el usuario lo desee desde N hasta M. N
debe ser menor que M y en caso contrario hay que
intercambiarlos.
Leer por el teclado N nmeros enteros. Se desea saber cuantos de
ellos son divisibles exactamente por 7 y cuantos no lo son.

EJEMPLO 5
Hacer un sistema para calcular el promedio de N notas de
seguimiento ingresadas por el teclado. Las notas deben estar
en el intervalo [0,5] no tener en cuenta notas fuera del rango y
al final mostrar que porcentaje del total de notas no fue
correcto.

Solucin en Pseint:
ejemplo5

EJEMPLO 6
Acumular N numeros ingresados por el teclado, la idea
es que solo se acumulen dgitos positivos mayores a
cero, de forma que al final se muestre que porcentaje de
los datos no se incluyeron en el acumulado mostrado.

Solucin en Pseint:
ejemplo6

EJEMPLO 7
Construir un programa que permita acumular los nmeros
terminados en 1, sumar los nmeros terminados en 2 y contar
los nmeros terminados en 3 que hay en el intervalo [p,q].
Modificar de ser necesario a p y a q, para que ambos sean
positivos y p sea menor que q.

Solucin en Pseint:
ejemplo7

EJEMPLO 8
Construir un programa que genere los nmeros pares
desde N en adelante, mientras el usuario lo desee.

Solucin en Pseint:
ejemplo8

Como aqu se desea


mostrar como mnimo
un numero se
recomienda usar la
estructura REPETIR.

EJEMPLO 9

Una oficina de seguros de Medelln ha reunido datos concernientes a todos


los accidentes de trnsito ocurridos en el rea metropolitana de Medelln en
el ltimo ao. Por cada conductor involucrado en un accidente se toman los
siguientes datos: ao de nacimiento, sexo (1: Femenino, 2: Masculino),
registro del carro (1: Medelln, 2 Otras ciudades). Hacer un algoritmo que
muestre:

El porcentaje de conductores menores de 25 aos.


Porcentaje de conductores de sexo femenino.
Porcentaje de conductores masculinos con edades entre los 12 y 30 aos.
Porcentaje de conductores cuyos carros estn registrados fuera de Medelln.

Solucin en Pseint:
ejemplo9

EJEMPLO 10

Se tiene una serie de registros de ellos tiene 4 valores,


que corresponden a las longitudes de diferentes patas
de una mesa. Elaborar de un algoritmo que chequee si
con los 4 valores ledos en cada registro se puede
fabricar una mesa no coja, de cuatro patas o, una mesa
no coja de 3 patas en caso de que no se pueda fabricar
una de 4. El algoritmo debe mostrar el nmero de
mesas de 4 y 3 patas que se pueden formar, lo mismo
que la cantidad de patas sobrantes.

Solucin en Pseint:
ejemplo10

EJEMPLO 11 (Series)
Realizar un algoritmo que muestre
los primeros N trminos la serie
Fibonacci, la cual tiene: 0, 1, 1, 2, 3,
5, 8, ...

Solucin en Pseint:
ejemplo11

EJEMPLO 12 (Series 2)
Realizar un algoritmo que muestre
los primeros N trminos de la
siguiente serie:
0, - 2, 4, -6, 8, -10, 12, ...

Solucin en Pseint:
ejemplo12

EJEMPLO 13 (Series 3)
Realizar un algoritmo que muestre
los primeros N trminos de la
siguiente serie:
0, -2, 4, -6, 8, 10,- 12, 14, 16, 18, -20,
22, 24, 26, 28, -30 ...

Solucin en Pseint:
ejemplo13

EJEMPLO 14 (Series 4)
Elaborar un algoritmo que lea un
valor de x, y calcule el valor de los N
primeros trminos de la serie:

Solucin en Pseint:
ejemplo14

EJEMPLO 15 (Series 4)

# Termino
1 1
2 -8/(2*1) = -4
3 32/(3*4) = 2.67
i

termino

resultado

1=1

-8/(2*1) = -4

1 4 = -3

32/(3*4) =
2.67

1 4 + 2.67 = -0.33

-128/(5*6) =
-4.27

1 4 + 2.67 4.27 = -4.6

512/(7*8) =
9.14

1 4 + 2.67 4.27 + 9.14


= 5.54

5.54

4 -128/(5*6) =
-4.27
5 512/(7*8) =
9.14
4.54

EJEMPLO 16 (Problema)

Varias ambulancias
recorren la ciudad y cuando
se recibe en la CENTRAL
una llamada se informa la
ubicacin de la emergencia
mediante coordenadas, lo
mismo que la ubicacin de
todas las ambulaciones. La
central es el punto (0,0) u
origen de coordenadas. Se
sabe que existen N
ambulancias en servicio.
Realice un algoritmo que,
dada la informacin
necesaria, informe las
coordenadas de la
ambulancia ms cercana al
punto de emergencia.

EJEMPLO 17 (Series 5)
Encontrar el valor de para un valor
dado de exp(x) dado, mediante la
serie:

S-ar putea să vă placă și