P. 1
3- Estructuras Repetitivas.pdf

3- Estructuras Repetitivas.pdf

|Views: 529|Likes:
Publicado porBernabéHerrera

More info:

Published by: BernabéHerrera on May 26, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

06/30/2015

pdf

text

original

Unidad III

Estructuras de Control

ESTRUCTURAS REPETITIVAS
CONCEPTOS BÁSICOS
1.

BUCLES (LAZO).
El bucle o lazo (ciclo) es un segmento de un algoritmo o programa, cuyas instrucciones se repiten un número

determinado de veces mientras se cumple una determinada condición específica.
2.

CONTADORES.
Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad fija (incremento) en cada interacción.

3.

ACUMULADORES.
Un acumulador es una variable cuya misión es almacenar cantidades variables resultantes de sumas sucesivas.

4. INTERRUPTORES (SWITCHES) O (CONMUTADORES)

Es un campo de memoria

que pueden tomar dos valores

inclusivos (0 y 1, Falso y cierto).

TIPOS:
# #

ESTRUCTURA Mientras / Hacer mientras (“WHILE”). ESTRUCTURA Desde/para (“FOR”).
1

Ing. Ruth Figueroa de Flores

Unidad III

Estructuras de Control

ESTRUCTURAS MIENTRAS Ó HACER MIENTRAS (WHILE Ó DOWHILE) DEFINICIÓN:
La estructura repetitiva While ( Mientras / Hacer mientras) es aquella en que el cuerpo del bucle se repite mientras se cumple una determinada condición.

PRESENTACIÓN GRÁFICA: DIAGRAMA DE FLUJO

Condición
Verdadero

Falsa

Acciones

PSEUDOCÓDIGO EN ESPAÑOL

PSEUDOCÓDIGO EN INGLÉS

Hacer mientras <condición> <acciones> Fin Mientras

While <condición> <acciones> End while

Ing. Ruth Figueroa de Flores

2

Unidad III

Estructuras de Control

REGLAS DE FUNCIONAMIENTO
1. La condición (expresión lógica) se evalúa antes y después de cada ejecución del bucle. Si condición es verdadera se ejecuta el bucle, y si es falsa, el control pasa a la sentencia siguiente al bucle. 2. Si la condición se evalúa a falso cuando se ejecuta el bucle por primera vez, el cuerpo del bucle no se ejecutará nunca. En este caso se dice que el bucle se ha ejecutado cero veces. 3. Mientras la condición sea verdadera el bucle se ejecutará. Esto significa que el bucle se ejecutará indefinidamente a menos que “algo” en el interior del bucle modifique la condición haciendo que su valor pase a falso. Si la expresión nunca cambia de valor, entonces el bucle no termina nunca y se denomina bucle infinito o sin fin.

PRECAUSIONES:
1. La condición lógica en un bucle WHILE debe tener un valor la primera vez que se evalúa: en caso contrario, el programa abortará (se detendrá) al ejecutarse WHILE. 2. La condición lógica en un bucle WHILE debe ser modificada por una sentencia en el cuerpo del bucle; en caso contrario, el bucle es infinito. 3. Es posible que el cuerpo del bucle no se ejecute nunca. Esto sucederá si la condición lógica es falsa la primera vez que se evalúa.

MÉTODOS :
Existen dos métodos para controlar o terminar un bucle: 1. 2. Bucles controlado por contador (bucle de conteo) Bucle controlado por condición.
3

Ing. Ruth Figueroa de Flores

Unidad III

Estructuras de Control

1. BUCLES CONTROLADO POR CONTADOR (BUCLE DE CONTEO)
Un bucle controlado por contador es un bucle cuyas iteraciones se controlan por una variable cuyo valor representa a un contador. El mecanismo utilizado es una variable de control del bucle que actúa cono contador.

UN BUCLE CONTROLADO POR CONTADOR CONSTA DE TRES PARTES, ADEMÁS DEL CUERPO Y DE LA CONDICIÓN DE SALIDA:
¾ Inicialización de la variable de control del bucle. ¾ Comprobación del valor de la variable de control del bucle. ¾ Incrementa del valor de la variable del control del bucle.

EL FORMATO DE ESTE BUCLE ES:
1. Establecer variable contador a un valor inicial 2. Hacer mientras variable de contador < valor final

Procesos

. . .
Incremento variable contador en 1
3. Fin mientras

EN EL USO DEL CONTADOR SE DEBE TENER EN CUENTA AL MENOS TRES FACTORES:
1. El valor inicial. 2. El valor final. 3. El operador relacional utilizado para comparar la terminación del bucle.

NOTA: Se utiliza un bucle controlado por contador cuando se puede con antelación cuántas iteraciones se deben ejecutar exactamente.

Cada vez que el cuerpo de un bucle se ejecuta, el valor del contador se incrementa.

Ing. Ruth Figueroa de Flores

4

Unidad III

Estructuras de Control

2. BUCLE CONTROLADO POR CONDICIÓN.
Los bucles condicionales o controlados por condición se utilizan cuando no se sabe, a prioridad, el número exacto de iteraciones a realizar. EXISTEN DIFERENTES TÉCNICAS PARA REALIZAR EL CONTROL DEL BUCLE. 1. Solicitar al usuario la condición del bucle. Este método consiste simplemente en pedir al usuario si existen más entradas. 2. valor centinela. Una centinela es un valor especial utilizado para señalar el final de una lista de datos. El valor elegido debe ser totalmente distinto de los posibles valores de la lista para que se pueda utilizar para señalar el final de la lista. 3. Uso de banderas o interruptores. Una bandera o interruptor (flag) es una variable lógica que se utiliza para conservar el estado (verdadero o falso) de una condición Se denomina bandera o interruptor por asociarse a un interruptor (incendido/apagado) o a una bandera (arriba/abajo). El valor del interruptor debe inicializarse antes de comenzar el bucle y debe cambiar su estado (valor) dentro del cuerpo del bucle.
Ing. Ruth Figueroa de Flores

5

Unidad III

Estructuras de Control

ESTRUCTURAS DESDE/PARA (FOR...NEXT) DEFINICIÓN:
La estructura repetitiva FOR (DESDE) es aquella en el que el número de iteraciones se conoce por anticipado y por ello no se precisa poner ninguna condición de salida para detener el bucle. En su lugar, un contador cuenta el número de iteraciones fijas y se termina cuando llega al valor final.

PRESENTACIÓN GRÁFICA:
DIAGRAMA DE FLUJO
V = Vi hasta Vf [inc/dec] [pasos]

Acciones

PSEUDOCÓDIGO EN ESPAÑOL

Desde V = Vi hasta Vf hacer <acciones> Fin desde (V) Desde V = Vi hasta Vf Inc/Dec pasos hacer <acciones> Fin desde (V)
Ing. Ruth Figueroa de Flores

6

Unidad III

Estructuras de Control

For . . . Next. (Visual Basic.NET)
PSEUDOCÓDIGO EN INGLÉS For <variable contador> = <valor inicio> to <Valor final> do Código por ejecutar Next <variable contador>
For <variable contador> = <valor inicio> to <Valor final> Step <valor incremento> Código por ejecutar Next <variable contador>

Incluir la variable de contador después de la instrucción Next final es opcional. Pero ayuda a determinar a cuál bucle For pertenece, además de que es una buena práctica de programación.

LA VARIABLE CONTADOR.
La variable de contador se incrementa en cada ciclo del bucle, desde el valor inicial hasta el final. Cuando se alcanza el valor final, el bucle finaliza su ejecución y el programa continúa con la línea que siga a la instrucción Next.

USO DEL STEP PARA ESTABLECER UN INCREMENTO.
Especifica el monto del incremento. Puede agregar, a continuación del valor final de la instrucción For, el modificador Step <valor de incremento>, y la variable de contador se incrementará de acuerdo con el valor que haya establecido. Una característica interesante y útil de la opción Step en el bucle For, es la de poder moverse en sentido inverso en un rango de valores.
Ing. Ruth Figueroa de Flores

7

Unidad III

Estructuras de Control

REGLAS DE FUNCIONAMIENTO:
1. La variable índice (variable de contador)

es una variable de tipo

entero.
2. Antes de la primera ejecución del bucle, a la variable de control se

asigna el valor inicial.
3. La última ejecución del bucle normalmente ocurre cuando la

variable de control es igual al valor final.
4. Si el valor inicial de la variable de contador es menor que el valor

final los incrementos deben de ser positivos, caso contrario las acciones no se ejecutarían.
5. Si el valor inicial es mayor que el valor final tiene que existir un

decremento; o sea un incremento negativo.
6. Las variables de control, valor inicial y valor final deben ser todas

del mismo tipo, pero, el tipo real no está permitido. Los valores iniciales y finales pueden ser tanto expresiones como constantes.
7. Cuando se utiliza la palabra to, la variable de control se incrementa

en cada iteración. Si se utiliza downto, la variable se decremento.
8. Es ilegal intentar modificar el valor de la variable de control, el valor

inicial y el valor final dentro del bucle.
9. El valor de la variable de control se queda indefinido cuando se

termina el bucle.
Ing. Ruth Figueroa de Flores

8

Unidad III

Estructuras de Control

EJEMPLO Nº 1.
Programa y Pseudocódigo que imprima Desde/Para – For ...Next. cinco veces “HOLA” empleando la instrucción

Visual Basic.NET Inicio Dim intcontador As Integer For intcontador = 1 to 10 System.Console.WriteLIne (“HOLA”) Next intcontador Fin Var

Pseudocódigo

Entera: intcontador // Controla el ciclo. Desde intcontador = 1 hasta 10 Escribir “HOLA” Fin desde intcontador

EJEMPLO Nº 2 . Programa y Pseudocódigo que imprima los seis primeros números impares, empleando la instrucción Desde/Para – For ...Next.

Visual Basic.NET
Inicio Dim intcontador As Integer For intcontador = 1 to 11 Step 2 System.Console.WriteLIne (intcontador) Next intcontador Fin Var

Pseudocódigo

Entera: intcontador // Controla el ciclo. Desde intcontador = 1 hasta 11 inc 2 Imprimir (intcontador) Fin desde intcontador

EJEMPLO Nº 3 . Pseudocódigo que Imprimir la tabla de multiplicar de cualquier número.

Pseudocódigo
Algoritmo Tabla // Imprimir la tabla de multiplicar de cualquier número Inicio Var Entera: N // representa el número de la tabla a imprimir. K // contador. Representa la variable de control del ciclo Desde k = 1 hasta 9 Imprimir N, “*”,K , “=”, N * K Fin desde K Fin
Ing. Ruth Figueroa de Flores

9

Unidad III

Estructuras de Control

PROBLEMAS DE ESTRUCTURAS REPETITIVAS DESDE/PARA
1. Calcule la suma de los números pares comprendidos entre 10 y 50. 2. Calcule la suma de los cuadrados y cubos de los N primeros números naturales. Además, calcule

la media de estos N primeros números naturales.
3. Imprima todas las tablas de multiplicar (números 1 al 9). 4. Calcular el factorial de un número menor que 8. Recuerda por ejemplo 4! = 4*3*2*1. 5. Imprima el rango de números (6 . . . –9) brincando de 3 en 3. 6. Sumar los números pares del 2 al 100 e imprimir su valor. 7. Calcular la media de 50 números e impresión del resultado. 8. Calcular los múltiplos de 4 comprendidos entre 4 y N, donde N es un valor introducido por el

teclado.
9. Se desea calcular independientemente la suma de los números pares e impares comprendidos

entre 1 y 200.
10. Calcular la tablas de multiplicar mediante bucles anidados desde. 11. Imprimir los números del 1 al 10, sus cuadrados y sus cubos, en forma de tablas. 12. Calcule el promedio de calificaciones parciales de cada uno de los alumnos de un grupo de 5,

sabiendo que existen tres periodos parciales.
13. Imprima las parejas de valores.

1 1 2 2 3 3

1 2 1 2 1 2

14. Una compañía de seguros tiene contratados a n vendedores, cada uno de los cuales hace tres

ventas a la semana. Su política de pago es que un vendedor recibe un sueldo base, más un 10% extra por comisiones de sus ventas. El gerente de la compañía desea saber cuánto dinero obtendrá en la semana cada vendedor por concepto de comisiones por las tres ventas realizadas, y cuánto tomando en cuanta su sueldo base y sus comisiones.
15. En una empresa se requiere calcular el salario semanal de cada uno de los n obreros que laboran

en ella. El salario se obtiene de la siguiente manera: ¾ Si el obrero trabaja 40 horas o menos se le paga $ 4 por hora. ¾ Si el obrero trabaja más de 40 horas se le paga $4 por cada una de las primeras 40 horas y $6 por cada hora extra.
Ing. Ruth Figueroa de Flores

10

Unidad III 16.

Estructuras de Control

Determinar cuántos hombres y cuántas mujeres se encuentran en un grupo de n personas, suponiendo que los datos son extraídos alumno por alumno. Obtener el promedio de calificaciones de un grupo de n alumnos. El departamento de Seguridad Pública y Tránsito del D.F., desea saber: de n autos que entran a la ciudad de El Salvador cuántos entran con calcomanía de cada color. Conociendo el último dígito de la placa de cada automóvil se puede determinar el color de la calcomanía utilizando la siguiente relación:

17. 18.

Dígito
1 3 5 7 9 19. Ó Ó Ó Ó Ó 2 4 6 8 0

Color
Amarilla Rosa Roja Verde Azul

Una persona desea invertir en un banco, el cual le otorga un 2% de interés mensual sobre la cantidad invertida. ¿Cuál será la cantidad de dinero que tendrá luego de un año si la ganancia de cada mes es reinvertida?. Calcule el promedio de edades de hombre, mujeres y de todo un grupo de n alumnos. Una persona debe realizar un muestreo de 200 personas para determinar el promedio de peso de los niños, jóvenes, adultos y ancianos que existen en su zona habitacional. Para ello, conforme va encontrando a las personas, introduce los datos a su computadora, la cual mediante un programa , las clasifica y despliega los cuatro promedios que la persona requiere. Categoría
Niños Jóvenes Adultos Ancianos 0 13 30 60

20. 21.

Edad
12 29 59 Adelante

22. 23. 24. 25.

Encontrar el menor valor de un conjunto de n números dados. Encontrar el mayor valor de un conjunto de n números dados. Dado un número determinar si es primo o no. Leer 50 calificaciones de un grupo de alumnos. Calcule y escriba el porcentaje de reprobados. Tomando en cuenta que la calificación mínima aprobatoria es de 70. El profesor de una materia desea conocer la cantidad de sus alumnos que no tienen derecho al examen de nivelación. Diseñe un algoritmo que lea las calificaciones obtenidas en 5 materias por cada uno de los 40 alumnos y escriba la cantidad de ellos que no tienen derecho al examen de nivelación.

26.

Ing. Ruth Figueroa de Flores

11

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->