Ejercicios de Estructuras Repetitivas Ejemplos resueltos de for / while ...

1. Elaborar un programa que muestre los numeros pares comprendidos entre 10 y 20 inclusive #include<stdio.h> main() { int i; printf("Los numeros pares entre 10 y 20 inclusive son: \n"); for(i=10;i<=20;i=i+2) printf("%d \n",i); return 0; } 2. Elaborar un programa que muestre los numeros pares comprendidos entre 20 y 10 inclusive (orden descendente). # include<stdio.h> main() { int i; printf("Los numeros pares entre 20 y 10 inclusive son: \n"); for(i=20;i>=10;i=i-2) printf("%d \n",i); return 0; } 3. Mostrar la tabla de caracteres ASCII a partir del Código 32 (el espacio en blanco) hasta el Código 164 (o sea la ñ) sin incluir las minúsculas (rango del 97 al 122) # include<stdio.h> main() { int i; printf("Los Caracteres ASCII son: \n"); for(i=32;i<=164;i++) { if(i<97 || i>122) printf("%c %d \t",i,i); } return 0; } 4. Elaborar un programa que calcule la suma de los números multiplos de 3 a partir del número 9 y finaliza en el número 45, no deben incluirse en la suma los números comprendidos entre 21 y 27. # include<stdio.h> main() { int i,s; s=0; printf("Suma de los multiplos de 3: \n"); for(i=9;i<=45;i+=3) { if(i<21 || i>27)

s = s + i; } printf("la suma es %d \n",s); return 0; } 5. Elaborar un programa que calcule la suma de los números multiplos de 3 y 7 a partir del número 9 y finaliza en el numero 45, no deben incluirse en la suma los números comprendidos entre 21 y 27. # include<stdio.h> main() { int i,m3,m7,s; m3=0; m7=0; printf("Suma de los múltiplos de 3 y 7: \n"); for(i=9;i<=45;i++) { if(i<21 || i>27) { if (i%3 == 0) { m3 +=i;} if (i%7 == 0) { m7 +=i;} } } s = m3 + m7; printf("la suma es %d \n",s); return 0; } 6. Generalizar el caso: Elaborar un programa que calcule la suma de los números multiplos de M y N a partir del número X y finaliza en el numero Y, no deben incluirse en la suma los números comprendidos entre A y B. use scanf para ingresar los datos a las variables M,N,X,Y,A y B # include<stdio.h> main() { int m,n,x,y,a,b; int i,mm,mn,s; mm=0; mn=0; printf("Ingrese los valores que representan a los multiplos \n"); scanf("%d %d",m,n); printf("Ingrese el rango desde-hasta \n"); scanf("%d %d",x,y); printf("Ingrese el rango de exclusion desde-hasta \n"); scanf("%d %d",a,b); printf("Suma de los múltiplos de %d y %d: \n",m,n); for(i=x;i<=y;i++) { if(i<a || i>b) { if (i%3 == 0) { mm +=i;} if (i%7 == 0) { mn +=i;} } }

s = mm + mn; printf("la suma es %d \n",s); return 0; }

OTROS PROGRAMAS COMPLEMENTARIOS QUE PUEDEN AYUDARNOS EN LAS ESTRUCTURAS REPETITIVAS
PROGRAMA QUE DEMUESTRA EL USO DE getchar() esta funcion permite ingresar varios caracteres y da por terminado el ingreso cuando se presiona la tecla ENTER o sea \n - getchar( ) esta definida en "stdio.h" Tengase en cuenta que solo se memorizará la primera tecla presionada #include <stdio.h> main() { int i; char ch; printf("Ingresar un texto : \n"); ch = getchar(); printf("\n la primera tecla pulsada fue %c \n",ch); return 0; } EJEMPLO DE COMO SE DEBE INGRESAR UN CARACTER USANDO getche() #include <stdio.h> #include <conio.h> /* cuando quieras ingresar un caracter solamente puedes la funcion usar getche()*/ main() { char ch; printf("Ingrese un caracter : "); ch = getche(); printf("\nIngresaste : %c \n", ch); return 0; } // - observa que la tecla pulsada es la que se mostrará // - getche() esta declarada en conio.h por eso debemos incluir // la linea #include <conio.h> // - tambien debemos incluir stdio.h porque alli // se encuentra declarada printf PROGRAMA PARA INGRESAR VARIOS CARACTERES USANDO getche() el programa continuara ingresando texto hasta que se presione k #include <stdio.h> #include <conio.h> main() { int i; char ch; i = 0;

return 0. } Ejercicios Propuestos con For / While los siguientes ejercicios deberán ser resueltos por partida doble: una solución con "for". Calcular el factorial de un número dado (El programa solo admite datos entre 3 y 8) 4. Idem al anterior pero contar las consonantes . Realizar un programa que cuente las vocales cuando se ingresa una cadena de textos con getchar() 6. Determinar el numero mayor de 10 numeros ingresados 2. if(ch == 'k') i=1. Implemente el siguiente juego: el programa seleccionará un número aleatorio entre 0 y 100 y el jugador debe acertarlo. } printf("\n terminaste \n").printf("Ingresar caracteres hasta presionar k : \n"). otra con "while" 1. Determinar el numero menor de 12 numeros ingresados 3.ch). El juego termina cuando se acierte la cifra o halla realizado un máximo de 12 intentos en cuyo caso se le mostrará al jugador la calificación obtenida según la siguiente tabla: Número de intentos Categoría 1-3 Suertudo 4-6 Genio 7 No está mal 8 Se puede mejorar >= 9 Que pasa amigo 5. while(i == 0) { ch = getche(). printf("\n la ultima tecla presionada fue %c \n". En cada intento el jugador propondrá una solución y se le informará si el número a acertar es menor o mayor que el propuesto.

Importante: Si la condición siempre retorna verdadero estamos en presencia de un ciclo repetitivo infinito. Inicializamos una variable con el valor 1. A la rama del verdadero la graficamos en la parte inferior de la condición. Representación gráfica de la estructura while: No debemos confundir la representación gráfica de la estructura repetitiva while (Mientras) con la estructura condicional if (Si) Funcionamiento: En primer lugar se verifica la condición. Diagrama de flujo: . El bloque se repite MIENTRAS la condición sea Verdadera. Una línea al final del bloque de repetición la conecta con la parte superior de la estructura repetitiva. Problema 1: Realizar un programa que imprima en pantalla los números del 1 al 100. luego imprimimos la variable. incrementamos nuevamente la variable y así sucesivamente.Estructura repetitiva while. nunca finalizará el programa. si la misma resulta verdadera se ejecutan las operaciones que indicamos por la rama del Verdadero. Dicha situación es un error de programación. Sin conocer las estructuras repetitivas podemos resolver el problema empleando una estructura secuencial. En caso que la condición sea Falsa continúa por la rama del Falso y sale de la estructura repetitiva para continuar con la ejecución del algoritmo.

Si continuamos con el diagrama no nos alcanzarían las próximas 5 páginas para finalizarlo. Emplear una estructura secuencial para resolver este problema produce un diagrama de flujo y un programa en Java muy largo. Ahora veamos la solución empleando una estructura repetitiva while: .

La operación x=x + 1 se lee como "en la variable x se guarda el contenido de x más 1". al retornar falso la verificación de la condición se sale de la estructura repetitiva y continua el algoritmo. seguidamente comienza la estructura repetitiva while y disponemos la siguiente condición ( x <= 100). Mientras la condición retorne verdadero se ejecuta el bloque de instrucciones. Observar que si. y seguidamente se incrementa la variable x en uno. Al finalizar el bloque de instrucciones que contiene la estructura repetitiva se verifica nuevamente la condición de la estructura repetitiva y se repite el proceso explicado anteriormente. en este caso finaliza el programa. se lee MIENTRAS la variable x sea menor o igual a 100. Al ejecutarse la condición retorna VERDADERO porque el contenido de x (1) es menor o igual a 100. Se imprime el contenido de x. Al ser la condición verdadera se ejecuta el bloque de instrucciones que contiene la estructura while. El bloque de instrucciones contiene una salida y una operación. por ejemplo. Lo más difícil es la definición de la condición de la estructura while y qué bloque de instrucciones se van a repetir. si x contiene 1 luego de ejecutarse esta operación se almacenará en x un 2.Es muy importante analizar este diagrama: La primera operación inicializa la variable x en 1. Es decir. disponemos la condición x >=100 ( si x es mayor o igual a 100) no provoca ningún error sintáctico .

print(" . Para las salidas utilizamos la función print. No existe una RECETA para definir una condición de una estructura repetitiva. while (x<=100) { System.out. en este caso finaliza el diagrama. La variable x debe estar inicializada con algún valor antes que se ejecute la operación x=x + 1 en caso de no estar inicializada aparece un error de compilación. Una vez planteado el diagrama debemos verificar si el mismo es una solución válida al problema (en este caso se debe imprimir los números del 1 al 100 en pantalla). sino que se logra con una práctica continua solucionando problemas. Programa: public class EstructuraRepetitivaWhile1 { public static void main(String[] ar) { int x. . System. x=1. 100 101 Cuando x vale 101 la condición de la estructura repetitiva retorna falso. . para ello podemos hacer un seguimiento del flujo del diagrama y los valores que toman las variables a lo largo de la ejecución: x 1 2 3 4 .print(x).pero estamos en presencia de un error lógico porque al evaluarse por primera vez la condición retorna falso y no se ejecuta el bloque de instrucciones que queríamos repetir 100 veces. } } } Importante:Como podemos observar no hemos creado un objeto de la clase Scanner.out. Esto debido a que en este programa no hay que ingresar datos por teclado. que se encuentra creada por defecto en cualquier programa que codifiquemos en Java. x = x + 1. Importante: Podemos observar que el bloque repetitivo puede no ejecutarse ninguna vez si la condición retorna falso la primera vez.").

2 .Debemos inicializar x con el valor 50. Problema 2: Escribir un programa que solicite la carga de un valor positivo y nos muestre desde 1 hasta el valor ingresado de uno en uno.Inicializar a x con el valor 2 y dentro del bloque repetitivo incrementar a x en 2 ( x = x + 2 )..Imprimir los números del -50 al 0.Recordemos que un problema no estará 100% solucionado si no hacemos el programa en Java que muestre los resultados buscados.6.Imprimir los números del 50 al 100. 4 .Debemos cambiar la condición del while con x<=500.4. 4 . Probemos algunas modificaciones de este programa y veamos que cambios se deberían hacer para: 1 .Inicializar x con el valor -50 y fijar la condición x<=0. Ejemplo: Si ingresamos 30 se debe mostrar en pantalla los números del 1 al 30.8 .. Es de FUNDAMENTAL importancia analizar los diagramas de flujo y la posterior codificación en Java de los siguientes problemas..Imprimir los números del 2 al 100 pero de 2 en 2 (2. 3 .100). 3 . Respuestas: 1 . en varios problemas se presentan otras situaciones no vistas en el ejercicio anterior. Diagrama de flujo: .Imprimir los números del 1 al 500. 2 .

. A la prueba del diagrama la podemos realizar dándole valores a las variables. El operador puede cargar cualquier valor. ya que la condición es ³Mientras x<=n ´. es decir ³mientras x sea menor o igual a 10´. por ejemplo.Scanner. pues x comienza en uno y se incrementa en uno cada vez que se ejecuta el bloque repetitivo.util. Si el operador carga 10 el bloque repetitivo se ejecutará 10 veces. si ingresamos 5 el seguimiento es el siguiente: n x 5 1 (Se imprime el contenido de x) 2 " " 3 " " 4 " " 5 " " 6 (Sale del while porque 6 no es menor o igual a 5) Programa: import java.Podemos observar que se ingresa por teclado la variable n.

out. Diagrama de flujo: . n=teclado. x=1.in). int n. El contador x nos indica en cada momento la cantidad de valores impresos en pantalla.out.public class EstructuraRepetitivaWhile2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.out. } } } Los nombres de las variables n y x pueden ser palabras o letras (como en este caso) La variable x recibe el nombre de CONTADOR.nextInt(). Problema 3: Desarrollar un programa que permita la carga de 10 valores por teclado y nos muestre posteriormente la suma de los valores ingresados y su promedio.print(x). System. System.x. Un contador es un tipo especial de variable que se incrementa o decrementa con valores constantes durante la ejecución del programa. x = x + 1.print(" . while (x<=n) { System.print("Ingrese el valor final:").").

En este problema. llevamos un CONTADOR llamado x que nos sirve para contar las vueltas que debe repetir el while. a semejanza de los anteriores. También aparece el concepto de ACUMULADOR (un acumulador es un tipo .

x=1. La prueba del diagrama se realiza dándole valores a las variables: valor suma x promedio 0 0 (Antes de entrar a la estructura repetitiva estos son los valores).suma.valor. la variable suma se incrementa con el contenido ingresado en la variable valor. Cada ciclo que se repita la estructura repetitiva. suma=0. El promedio se calcula al salir de la estructura repetitiva (es decir primero sumamos los 10 valores ingresados y luego los dividimos por 10) Hay que tener en cuenta que cuando en la variable valor se carga el primer valor (en este ejemplo 5) al cargarse el segundo valor (16) el valor anterior 5 se pierde. 5 5 1 16 21 2 7 28 3 10 38 4 2 40 5 20 60 6 5 65 7 5 70 8 10 80 9 2 82 10 8 90 11 9 Este es un seguimiento del diagrama planteado.especial de variable que se incrementa o decrementa con valores variables durante la ejecución del programa) Hemos dado el nombre de suma a nuestro acumulador.in).promedio.util. Programa: import java. por ello la necesidad de ir almacenando en la variable suma los valores ingresados.Scanner. Los números que toma la variable valor dependerá de qué cifras cargue el operador durante la ejecución del programa. int x. public class EstructuraRepetitivaWhile3 { public static void main(String[] ar) { Scanner teclado=new Scanner(System. while (x<=10) { .

Confeccionar un programa que pida ingresar por teclado la cantidad de piezas a procesar y luego ingrese la longitud de cada perfil. x=x+1. System.out.print(promedio).30 son aptas. Imprimir por pantalla la cantidad de piezas aptas que hay en el lote. System.out.20 y 1.print("El promedio es:"). System. valor=teclado. suma=suma+valor. Diagrama de flujo: . System.print("Ingrese un valor:").print("La suma de los 10 valores es:").out. sabiendo que la pieza cuya longitud esté comprendida en el rango de 1.out.System.println(suma). } promedio=suma/10. } } Problema 4: Una planta que fabrica perfiles de hierro posee un lote de n piezas.out.nextInt().

Cada vez que ingresamos un largo de pieza (largo) verificamos si es una medida correcta (debe estar entre 1.Podemos observar que dentro de una estructura repetitiva puede haber estructuras condicionales (inclusive puede haber otras estructuras repetitivas que veremos más adelante) En este problema hay que cargar inicialmente la cantidad de piezas a ingresar ( n ).30 el largo para que sea correcta).20 y 1. en caso de ser correcta la CONTAMOS (incrementamos la variable cantidad en 1) . seguidamente se cargan n valores de largos de piezas.

out. int x. que es el momento donde uno desarrolla individualmente un algoritmo para la resolución de problemas. if (largo>=1.n.20 && largo<=1.nextInt().print("La cantidad de piezas aptas son:"). El tiempo a dedicar a esta sección EJERCICIOS PROPUESTOS debe ser mucho mayor que el empleado a la sección de EJERCICIOS RESUELTOS. while (x<=n) { System. } } Problemas propuestos Ha llegado la parte fundamental.out.Al contador cantidad lo inicializamos en cero porque inicialmente no se ha cargado ningún largo de medida.30) { cantidad = cantidad +1. System.print("Cuantas piezar procesará:").out.util. x=1.nextFloat().print(cantidad).print("Ingrese la medida de la pieza:").in). public class EstructuraRepetitivaWhile4 { public static void main(String[] ar) { Scanner teclado=new Scanner(System. largo=teclado. float largo.Scanner. System.cantidad. cantidad=0. . } x=x + 1. n=teclado.out. } System. Cuando salimos de la estructura repetitiva porque se han cargado n largos de piezas mostramos por pantalla el contador cantidad (que representa la cantidad de piezas aptas) En este problema tenemos dos CONTADORES: x (Cuenta la cantidad de piezas cargadas hasta el momento) cantidad (Cuenta los perfiles de hierro aptos) Programa: import java.

6. Mostrar la altura promedio de las personas. En una empresa trabajan n empleados cuyos sueldos oscilan entre $100 y $500.44. Realizar un programa que permita cargar dos listas de 15 valores cada una. espero que sea lo que buscas: . 1. Además el programa deberá informar el importe que gasta la empresa en sueldos al personal. 7.33 . etc. if (valor%2==0) //Si el if da verdadero luego es par. Emplear el operador ³%´ en la condición de la estructura condicional: 8. 2. etc. Mostrar los múltiplos de 8 hasta el valor 500.22 . Informar con un mensaje cual de las dos listas tiene un valor acumulado mayor (mensajes "Lista 1 mayor". Debe aparecer en pantalla 8 16 .24. Es de vital importancia para llegar a ser un buen PROGRAMADOR poder resolver problemas en forma individual. 4. El algoritmo para calcular la división con Restas Sucesivas lo tengo así. Se ingresan un conjunto de n alturas de personas por teclado. "Listas iguales") Tener en cuenta que puede haber dos o más estructuras repetitivas en un algoritmo. Escribir un programa que solicite ingresar 10 notas de alumnos y nos informe cuántos tienen notas mayores o iguales a 7 y cuántos menores. (No se ingresan valores por teclado) 5. "Lista 2 mayor". Realizar un programa que imprima 25 términos de la serie 11 . realizar un programa que lea los sueldos que cobra cada empleado e informe cuántos empleados cobran entre $100 y $300 y cuántos cobran más de $300.La experiencia dice que debemos dedicar el 80% del tiempo a la resolución individual de problemas y el otro 20% al análisis y codificación de problemas ya resueltos por otras personas. Desarrollar un programa que permita cargar n números enteros y luego nos informe cuántos valores fueron pares y cuántos impares. 3.

Algoritmo TP3-2 Variables Entero: A. se va restando B a A en cada ciclo hasta que ya no sea posible y obviamente el contador (CONT) es el cociente. CONT Inicio Escribir 'Ingrese nº Dividendo y Divisor' Leer A. si se cumple la condición para dividir sólo números enteros positivos. CONT sino Escribir 'No se puede realizar la operación de división entera' finsi Fin A es el dividendo. Capítulo 16: . B Si A>=B Entonces CONT<-0 Mientras A>=B hacer A<-A-B CONT<-CONT+1 finmientras Escribir 'Resultado:'. B el divisor. B.

Enlaces patrocinados Inglés en Canada y USA Descuentos para Estudiantes Toronto. Este proceso de evaluación de la expresión booleana y ejecución del cuerpo se repite mientras la expresión sea cierta. Miami sites. En la lección anterior iniciamos con las estructuras repetitivas. finaliza la repetición. si es cierta. la cual no es muy recomendable de usar ya que su uso dificulta la legibilidad de un programa y tiende a confundir por el hecho de recurrir a numerosas etiquetas o números de línea. Existe otro caso de estructura conocida como Salto (Goto).repetro. La estructura Desde/Para suele utilizarse cuando se conoce con anterioridad el número de veces que se ejecutará la acción y se le conoce como Estructura Repetitiva en lugar de iterativa. no realizar ninguna iteración en el bucle. La diferencia entre ambas es que la condición se sitúa al principio (Mientras) o al final (Repetir) de la secuencia de instrucciones. . Se usan cuando no se conoce con anticipación el número de veces que se ejecutará la acción. Entonces. para diferenciarla de las dos anteriores.com Enlaces patrocinados Cuando se hace falsa. y Repetro . Entonces se vuelve a evaluar la expresión booleana.Databras Regime Especial Aduaneiro Repetro Databras www. mientras que Repetir ejecutará el bucle al menos una vez.google. Las estructuras Mientras y Para/Desde suelen en ciertos casos. Vancouver. La estructura While y la estructura Repeat. Se evalúa la expresión booleana y. el bucle continúa mientras la condición es verdadera (la cual se comprueba antes de ejecutar la acción) y en el segundo. se ejecutará al menos una vez). el bucle continúa hasta que la condición se hace verdadera (la condición se comprueba después de ejecutar la acción. New York.Estructuras iterativas. llamada el cuerpo del bucle. se ejecuta la instrucción especificada. en el primero. es decir. se conocen como Iterativas.com/site/apren Se llama Mientras a la estructura algorítmica que se ejecuta mientras la condición evaluada resulte verdadera. y si todavía es cierta se ejecuta de nuevo el cuerpo. Estructura mientras.

se sale del ciclo. nos sirve para compararla con el valor dado en la condición. para llevar la cuenta de las veces que entramos al cuerpo del ciclo.Que tendremos de diferente? . resolvimos este ejercicio en la lección anterior pero utilizando la estructura Desde.Observa en el flujograma. Representación pseudocodificada: Español Inglés Mientras <condición> While <condición> do Acciones Acciones Fin_mientras end_while EJEMPLO: Calcular la suma de los cuadrados de los primeros 100 números enteros y escribir el resultado. Esta variable a la vez. Hoy lo haremos con la estructura Mientras. Como recordarás. También es importante notar que esta variable se inicializa antes de entrar al cuerpo del ciclo y dentro del cuerpo se incrementa en una cantidad constante. cuando se cumple la condición. por lo general en uno. Solución. que se necesita una variable contadora (un índice).

el ciclo puede ser controlado por centinelas.CENTINELAS Y BANDERAS. la condición de While especifica que el cuerpo del ciclo debe continuar ejecutándose mientras la tarea no haya sido completada. En un ciclo While controlado por tarea. . CENTINELAS. introduciendo una señal adecuada llamada centinela. El bucle debe repetirse hasta que la respuesta del usuario sea "n" o "N". En un ciclo controlado por centinela el usuario puede suspender la introducción de datos cuando lo desee. Un ciclo Repetir controlado por centinela es cuando el usuario digita una letra para salir como por ejemplo S o N para indicar si desea continuar o no. Cuando no se conoce a priori el número de iteraciones que se van a realizar.

un valor centinela en esta lista puede ser -999. 0 Leer (gasto) Mientras gasto <> -1 hacer Sumgas . Si definimos gasto1. ya que nunca será una calificación válida y cuando aparezca este valor se terminará de ejecutar el bucle. Conocidas también como interruptores. gasto2.. sumgas + gasto Leer (gasto) Fin_mientras Escribir (sumgas) Fin BANDERAS. Por ejemplo. pero no sabemos exactamente cuántos fueron. son variables que pueden tomar solamente dos valores durante la ejecución del programa. -1 donde gastoi: real es el gasto número i y sumgas: real es el acumulador de gastos efectuados. se le denomina centinela y su función primordial es detener el proceso de entrada de datos en una corrida de programa.. no con estructuras Desde/Para. -1 es el centinela de fin de datos. si se tienen las calificaciones de un test (comprendida entre 0 y 100).Cuando una decisión toma los valores de -1 o algún posible valor que no esté dentro del rango válido en un momento determinado. Si la lista de datos son números positivos. Los centinelas solamente pueden usarse con las estructuras Mientras y Repetir. .. un valor centinela puede ser un número negativo. switch. los . Algoritmo: Inicio Sumgas . flags o conmutadores.. gasto3. ¿PODRÍAS DECIR POR QUÉ? Ejemplo: Suponga que debemos obtener la suma de los gastos que hicimos en nuestro último viaje.

Se les suele llamar interruptores porque cuando toman los valores 0 ó 1 están simulando un interruptor abierto/cerrado o encendido/apagado.. o bien los valores booleanos True o False..cuales pueden ser 0 ó 1. serie + (1/I) Band . "T" Fin_si I¬I+1 Fin_mientras Escribir (serie) .1 Leer (N) Band .1/N. "F" Sino Serie .. 0 I. Algoritmo: Inicio Serie .(1/I) Band . Ejemplo 1: Leer un número entero N y calcular el resultado de la siguiente serie: 1 .1/2+ 1/3 1/4 +. serie . +/. "T" Mientras I <= N hacer Si band = "T" entonces Serie .

5.. Obtener suma de los términos de la serie: 2. 15. 17. es variable auxiliar que indica si al siguiente término de la serie hay que sumarle 3 ó 2.. Sumser de tipo entero. Algoritmo: Inicio I ¬2 Sumser ¬0 Band ¬T" Mientras (I <= 1800) hacer Sumser ¬sumser + I Escribir (I) Si band = "T" entonces I ¬I + 3 Band ¬F" Sino I ¬I + 2 Band ¬T" Fin_si Fin_mientras Escribir (sumser) . 1800.Fin Ejemplo 2. es el acumulador de términos de la serie Band de tipo carácter.. 12. 10. . 7.

LSBF.com. Informate Aqui! www.mx Se llama Repetir a la estructura algorítmica que se ejecuta un número definido de veces hasta que la condición se torna verdadera: y Maestrias a Distancia Maestrias y Postgrados Reconocidos A Nivel Mundial.Fin Capítulo 17: Estructuras iterativas. cursos y talleres www.mdc1. Estructura repetir.es/OnlineEnlaces patrocinados Representación pseudocodificada : Español Inglés Repetir Repeat Acciones Acciones . Enlaces patrocinados Entrenamiento Formacion y Certificacion de instructores.

que en esta estructura el bucle se realizará por lo menos una vez. la condición ahora estará colocada al final del bucle para que primero ejecutamos la instrucción y luego preguntamos si la condición se cumple. Nuevamente resolveremos el ejercicio de las dos lecciones anteriores. la condición se evaluaba mientras era cierta. porque el bucle se repite hasta que la condición se cumpla. . En el bucle Mientras. A diferencia de la estructura Mientras.¿Podrás decir cuál será ahora la diferencia? Las reglas para construcción de esta estructura usando Repetir. nos dicen que debemos declarar una variable contador que debe inicializarse antes del ciclo e incrementarse dentro del ciclo. Esto quiere decir. Solución.Hasta que <condición> until <condición> EJEMPLO: Calcular la suma de los cuadrados de los primeros 100 números enteros y escribir el resultado. ahora utilizando la estructura Repetir. También podrás observar que la condición está al revés.

Enlaces patrocinados Repetro .Capítulo 15: Estructuras básicas.Databras Regime Especial Aduaneiro Repetro Databras www.repetro.com Durante las siguientes lecciones estaremos estudiando tres estructuras básicas que son: Estructura Desde/Para Estructura Mientras .

Los contadores se utilizan con la finalidad de contar sucesos o acciones internas de un bucle.Estructura Repetir En esta lección estudiaremos la forma general de la estructura Desde/Para. su uso y ejemplos. Se situará antes y fuera del bucle.Google. Estructura Desde/Para: Se usa frecuentemente cuando se conoce de antemano el número de veces que se ejecutarán las acciones de un bucle. La inicialización consiste en asignarle al contador un valor.3 GB de Capacidad y Accesible Desde Móviles Mail. Esta es una de sus características. y Correo Gmail Gratis Abre tu Cuenta en Google. debemos hacer uso de contadores y algunas veces de acumuladores. cuyos conceptos se describen a continuación: CONTADOR: Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante cada vez que se produce un determinado suceso o acción. deben realizar una operación de inicialización y posteriormente las sucesivas de incremento o decremento del mismo. . 7.com Enlaces patrocinados Representación pseudocodificada: Español Inglés Desde var = valor inicial hasta valor final hacer For var=valor inicial to valor final do Acciones acciones Fin_desde end_for A la estructura Desde/Para se le conoce como Repetitiva. Para utilizar esta estructura en algoritmos.

Ejemplo: i = i + 1 ACUMULADOR O TOTALIZADOR : Es una variable que suma sobre sí misma un conjunto de valores para de esta manera tener la suma de todos ellos en una sola variable. La diferencia entre un contador y un acumulador es que mientras el primero va aumentando de uno en uno. . Representación: <Nombre del acumulador> ¬ <nombre del acumulador> + <valor variable> Ejemplo: Calcular la suma de los cuadrados de los primeros 100 enteros y escribir el resultado. Ejemplo 2. Mientras y luego Repetir. Se desea resolver el problema usando estructura Desde. el acumulador va aumentando en una cantidad variable.Representación: <nombre del contador> ¬ nombre del contador> + <valor constante> Si en vez de incremento es decremento se coloca un menos en lugar del más.

el cual estudiaremos en otra lección. es decir. También observa la variable suma. ya que para sumar valores debemos partir de cero. el cual se inicializa en este caso. suma se incrementa en un número N. es que a suma le sumamos N más ella misma. Lo que queremos hacer notar por el momento. También debe inicializarse con cero. pero la diferencia con el contador N. En este ejemplo hemos utilizado un bucle repetir. antes de entrar al bucle. Dentro del bucle podrás notar que N se incrementa en 1. que al inicio no tenemos nada.Elaborar un flujograma para encontrar la suma de los K primeros números enteros. . con cero. la cual es un acumulador que lleva la suma de los números generados. Dentro del bucle. es cómo funcionan el contador y el acumulador. usando la estructura Desde/Para. Nota que N es el contador. EJERCICIO: Trata de elaborar un flujograma para encontrar el cuadrado de los primeros 25 números naturales.

¿Qué necesitas agregar ahora? RESUMEN En esta lección aprendimos un poco del uso de contadores y acumuladores. . los valores de las variables que especifican los valores inicial y final pueden cambiar.¿Qué necesitas para resolver el problema contadores o acumuladores? Modifica el flujograma del ejercicio anterior para que también te muestre la suma de dichos cuadrados. La instrucción del cuerpo del bucle de una instrucción Desde puede utilizar el valor de la variable de control. Dentro del cuerpo del bucle Desde. Esta estructura se puede usar únicamente en aquellos casos en que conocemos el número de veces que se va a realizar el ciclo. Esta estructura hace el incremento automáticamente y se inicializa en la instrucción desde. pero no debe modificar este valor. También aprendimos a elaborar flujogramas o algoritmos usando la estructura Desde. pero esto no va a afectar al número de repeticiones. Hay un número importante de reglas que deben seguirse cuando se utilizan instrucciones Desde: Los valores inicial y final de la variable de control se determinan antes de que empiece la repetición y no pueden cambiarse durante la ejecución de la instrucción Desde.

Sign up to vote on this title
UsefulNot useful