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; if(ch == 'k') i=1. Idem al anterior pero contar las consonantes . Determinar el numero mayor de 10 numeros ingresados 2. 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. 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. otra con "while" 1. Calcular el factorial de un número dado (El programa solo admite datos entre 3 y 8) 4. Implemente el siguiente juego: el programa seleccionará un número aleatorio entre 0 y 100 y el jugador debe acertarlo. return 0. while(i == 0) { ch = getche(). Determinar el numero menor de 12 numeros ingresados 3.ch). printf("\n la ultima tecla presionada fue %c \n".printf("Ingresar caracteres hasta presionar k : \n"). } Ejercicios Propuestos con For / While los siguientes ejercicios deberán ser resueltos por partida doble: una solución con "for". } printf("\n terminaste \n"). Realizar un programa que cuente las vocales cuando se ingresa una cadena de textos con getchar() 6. Dicha situación es un error de programación. Una línea al final del bloque de repetición la conecta con la parte superior de la estructura repetitiva. Importante: Si la condición siempre retorna verdadero estamos en presencia de un ciclo repetitivo infinito. nunca finalizará el programa. A la rama del verdadero la graficamos en la parte inferior de la condición.Estructura repetitiva while. incrementamos nuevamente la variable y así sucesivamente. 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. Inicializamos una variable con el valor 1. El bloque se repite MIENTRAS la condición sea Verdadera. si la misma resulta verdadera se ejecutan las operaciones que indicamos por la rama del Verdadero. Problema 1: Realizar un programa que imprima en pantalla los números del 1 al 100. Diagrama de flujo: . luego imprimimos la variable. Sin conocer las estructuras repetitivas podemos resolver el problema empleando una estructura secuencial. 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. 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: .Si continuamos con el diagrama no nos alcanzarían las próximas 5 páginas para finalizarlo. Es decir. La operación x=x + 1 se lee como "en la variable x se guarda el contenido de x más 1". por ejemplo. Se imprime el contenido de x. si x contiene 1 luego de ejecutarse esta operación se almacenará en x un 2. al retornar falso la verificación de la condición se sale de la estructura repetitiva y continua el algoritmo. Al ser la condición verdadera se ejecuta el bloque de instrucciones que contiene la estructura while. seguidamente comienza la estructura repetitiva while y disponemos la siguiente condición ( x <= 100). disponemos la condición x >=100 ( si x es mayor o igual a 100) no provoca ningún error sintáctico . 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.Es muy importante analizar este diagrama: La primera operación inicializa la variable x en 1. El bloque de instrucciones contiene una salida y una operación. y seguidamente se incrementa la variable x en uno. Al ejecutarse la condición retorna VERDADERO porque el contenido de x (1) es menor o igual a 100. Observar que si. 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. Mientras la condición retorne verdadero se ejecuta el bloque de instrucciones. en este caso finaliza el programa. se lee MIENTRAS la variable x sea menor o igual a 100. 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).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. Esto debido a que en este programa no hay que ingresar datos por teclado.out. 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(" . } } } Importante:Como podemos observar no hemos creado un objeto de la clase Scanner. sino que se logra con una práctica continua solucionando problemas.print(x). x=1. Para las salidas utilizamos la función print. 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.out. Importante: Podemos observar que el bloque repetitivo puede no ejecutarse ninguna vez si la condición retorna falso la primera vez. . x = x + 1. . que se encuentra creada por defecto en cualquier programa que codifiquemos en Java. 100 101 Cuando x vale 101 la condición de la estructura repetitiva retorna falso. Programa: public class EstructuraRepetitivaWhile1 { public static void main(String[] ar) { int x. while (x<=100) { System."). System. No existe una RECETA para definir una condición de una estructura repetitiva. . 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.Debemos inicializar x con el valor 50. 3 .Debemos cambiar la condición del while con x<=500. Ejemplo: Si ingresamos 30 se debe mostrar en pantalla los números del 1 al 30. Respuestas: 1 . en varios problemas se presentan otras situaciones no vistas en el ejercicio anterior.Recordemos que un problema no estará 100% solucionado si no hacemos el programa en Java que muestre los resultados buscados.100). Probemos algunas modificaciones de este programa y veamos que cambios se deberían hacer para: 1 .6.Imprimir los números del 50 al 100.Imprimir los números del -50 al 0.8 ..Inicializar x con el valor -50 y fijar la condición x<=0..Imprimir los números del 2 al 100 pero de 2 en 2 (2. 2 .4. 2 . Es de FUNDAMENTAL importancia analizar los diagramas de flujo y la posterior codificación en Java de los siguientes problemas. Diagrama de flujo: . 4 .Imprimir los números del 1 al 500.Inicializar a x con el valor 2 y dentro del bloque repetitivo incrementar a x en 2 ( x = x + 2 ). 4 . 3 . Podemos observar que se ingresa por teclado la variable n. por ejemplo. A la prueba del diagrama la podemos realizar dándole valores a las variables. . ya que la condición es ³Mientras x<=n ´. El operador puede cargar cualquier valor.util. es decir ³mientras x sea menor o igual a 10´.Scanner. 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. pues x comienza en uno y se incrementa en uno cada vez que se ejecuta el bloque repetitivo. 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. Diagrama de flujo: .out. System. Un contador es un tipo especial de variable que se incrementa o decrementa con valores constantes durante la ejecución del programa.in). while (x<=n) { System. n=teclado. System.print(" ."). x = x + 1. } } } 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.out.print("Ingrese el valor final:").x. El contador x nos indica en cada momento la cantidad de valores impresos en pantalla.print(x).out.nextInt().public class EstructuraRepetitivaWhile2 { public static void main(String[] ar) { Scanner teclado=new Scanner(System. int n. x=1. También aparece el concepto de ACUMULADOR (un acumulador es un tipo . a semejanza de los anteriores. llevamos un CONTADOR llamado x que nos sirve para contar las vueltas que debe repetir el while.En este problema. public class EstructuraRepetitivaWhile3 { public static void main(String[] ar) { Scanner teclado=new Scanner(System.Scanner. Programa: import java.util.suma.valor. por ello la necesidad de ir almacenando en la variable suma los valores ingresados. int x. 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. Los números que toma la variable valor dependerá de qué cifras cargue el operador durante la ejecución del programa. la variable suma se incrementa con el contenido ingresado en la variable valor. Cada ciclo que se repita la estructura repetitiva.promedio. x=1. 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.in). suma=0. while (x<=10) { . 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=suma+valor.println(suma). x=x+1.out.System. System.out. } } Problema 4: Una planta que fabrica perfiles de hierro posee un lote de n piezas. valor=teclado. sabiendo que la pieza cuya longitud esté comprendida en el rango de 1. System.print("El promedio es:").out.print("Ingrese un valor:"). System. } promedio=suma/10. Imprimir por pantalla la cantidad de piezas aptas que hay en el lote.print(promedio).out. System.print("La suma de los 10 valores es:").out. Confeccionar un programa que pida ingresar por teclado la cantidad de piezas a procesar y luego ingrese la longitud de cada perfil.30 son aptas. Diagrama de flujo: .nextInt().20 y 1. seguidamente se cargan n valores de largos de piezas.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 ).20 y 1. Cada vez que ingresamos un largo de pieza (largo) verificamos si es una medida correcta (debe estar entre 1. en caso de ser correcta la CONTAMOS (incrementamos la variable cantidad en 1) .30 el largo para que sea correcta). print("La cantidad de piezas aptas son:").Al contador cantidad lo inicializamos en cero porque inicialmente no se ha cargado ningún largo de medida. public class EstructuraRepetitivaWhile4 { public static void main(String[] ar) { Scanner teclado=new Scanner(System. cantidad=0.print("Cuantas piezar procesará:").out. x=1.nextInt().in). while (x<=n) { System. largo=teclado.print("Ingrese la medida de la pieza:").n. } } Problemas propuestos Ha llegado la parte fundamental. El tiempo a dedicar a esta sección EJERCICIOS PROPUESTOS debe ser mucho mayor que el empleado a la sección de EJERCICIOS RESUELTOS. float largo.out.print(cantidad). n=teclado. . 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. System.cantidad.nextFloat().20 && largo<=1.out. int x. if (largo>=1. } x=x + 1. System. que es el momento donde uno desarrolla individualmente un algoritmo para la resolución de problemas.Scanner. } System.30) { cantidad = cantidad +1.util.out. 4. etc.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.44. Mostrar los múltiplos de 8 hasta el valor 500. Informar con un mensaje cual de las dos listas tiene un valor acumulado mayor (mensajes "Lista 1 mayor".22 .24. El algoritmo para calcular la división con Restas Sucesivas lo tengo así. Realizar un programa que imprima 25 términos de la serie 11 . etc. "Listas iguales") Tener en cuenta que puede haber dos o más estructuras repetitivas en un algoritmo. 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.33 . Se ingresan un conjunto de n alturas de personas por teclado. Desarrollar un programa que permita cargar n números enteros y luego nos informe cuántos valores fueron pares y cuántos impares. Emplear el operador ³%´ en la condición de la estructura condicional: 8. En una empresa trabajan n empleados cuyos sueldos oscilan entre $100 y $500. 7. 6. (No se ingresan valores por teclado) 5. 2. Además el programa deberá informar el importe que gasta la empresa en sueldos al personal. "Lista 2 mayor". espero que sea lo que buscas: . if (valor%2==0) //Si el if da verdadero luego es par. 1. 3. Debe aparecer en pantalla 8 16 . Mostrar la altura promedio de las personas. Realizar un programa que permita cargar dos listas de 15 valores cada una. 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. Es de vital importancia para llegar a ser un buen PROGRAMADOR poder resolver problemas en forma individual. Algoritmo TP3-2 Variables Entero: A. B. CONT Inicio Escribir 'Ingrese nº Dividendo y Divisor' Leer A. B Si A>=B Entonces CONT<-0 Mientras A>=B hacer A<-A-B CONT<-CONT+1 finmientras Escribir 'Resultado:'. B el divisor. CONT sino Escribir 'No se puede realizar la operación de división entera' finsi Fin A es el dividendo. se va restando B a A en cada ciclo hasta que ya no sea posible y obviamente el contador (CONT) es el cociente. Capítulo 16: . si se cumple la condición para dividir sólo números enteros positivos. el bucle continúa mientras la condición es verdadera (la cual se comprueba antes de ejecutar la acción) y en el segundo.Estructuras iterativas. si es cierta. New York.google. llamada el cuerpo del bucle. y Repetro . finaliza la repetición. Entonces. no realizar ninguna iteración en el bucle. Se usan cuando no se conoce con anticipación el número de veces que se ejecutará la acción. el bucle continúa hasta que la condición se hace verdadera (la condición se comprueba después de ejecutar la acción. Las estructuras Mientras y Para/Desde suelen en ciertos casos. Miami sites. mientras que Repetir ejecutará el bucle al menos una vez. Enlaces patrocinados Inglés en Canada y USA Descuentos para Estudiantes Toronto. en el primero. y si todavía es cierta se ejecuta de nuevo el cuerpo.com Enlaces patrocinados Cuando se hace falsa.Databras Regime Especial Aduaneiro Repetro Databras www.repetro. 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. En la lección anterior iniciamos con las estructuras repetitivas. Existe otro caso de estructura conocida como Salto (Goto). La diferencia entre ambas es que la condición se sitúa al principio (Mientras) o al final (Repetir) de la secuencia de instrucciones. 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. Vancouver. es decir. Se evalúa la expresión booleana y. Estructura mientras. se ejecutará al menos una vez). Este proceso de evaluación de la expresión booleana y ejecución del cuerpo se repite mientras la expresión sea cierta. para diferenciarla de las dos anteriores.com/site/apren Se llama Mientras a la estructura algorítmica que se ejecuta mientras la condición evaluada resulte verdadera. . se ejecuta la instrucción especificada. La estructura While y la estructura Repeat. se conocen como Iterativas. Entonces se vuelve a evaluar la expresión booleana. resolvimos este ejercicio en la lección anterior pero utilizando la estructura Desde. cuando se cumple la condición.Que tendremos de diferente? . 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. Hoy lo haremos con la estructura Mientras. que se necesita una variable contadora (un índice). 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. para llevar la cuenta de las veces que entramos al cuerpo del ciclo. nos sirve para compararla con el valor dado en la condición.Observa en el flujograma. Solución. Esta variable a la vez. por lo general en uno. se sale del ciclo. Como recordarás. Cuando no se conoce a priori el número de iteraciones que se van a realizar. . El bucle debe repetirse hasta que la respuesta del usuario sea "n" o "N". CENTINELAS. 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. el ciclo puede ser controlado por centinelas. En un ciclo While controlado por tarea. 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 controlado por centinela el usuario puede suspender la introducción de datos cuando lo desee. introduciendo una señal adecuada llamada centinela.CENTINELAS Y BANDERAS. Si la lista de datos son números positivos. switch. 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. flags o conmutadores. 0 Leer (gasto) Mientras gasto <> -1 hacer Sumgas .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 definimos gasto1. -1 es el centinela de fin de datos. pero no sabemos exactamente cuántos fueron. -1 donde gastoi: real es el gasto número i y sumgas: real es el acumulador de gastos efectuados. son variables que pueden tomar solamente dos valores durante la ejecución del programa. un valor centinela puede ser un número negativo. un valor centinela en esta lista puede ser -999. sumgas + gasto Leer (gasto) Fin_mientras Escribir (sumgas) Fin BANDERAS.. Algoritmo: Inicio Sumgas . Por ejemplo. si se tienen las calificaciones de un test (comprendida entre 0 y 100). . Los centinelas solamente pueden usarse con las estructuras Mientras y Repetir. se le denomina centinela y su función primordial es detener el proceso de entrada de datos en una corrida de programa. gasto2.. los .. gasto3. ¿PODRÍAS DECIR POR QUÉ? Ejemplo: Suponga que debemos obtener la suma de los gastos que hicimos en nuestro último viaje. no con estructuras Desde/Para. Algoritmo: Inicio Serie .. "T" Fin_si I¬I+1 Fin_mientras Escribir (serie) . +/.cuales pueden ser 0 ó 1. serie . serie + (1/I) Band . 0 I.1/N.1 Leer (N) Band .(1/I) Band .. o bien los valores booleanos True o False. "T" Mientras I <= N hacer Si band = "T" entonces Serie .1/2+ 1/3 1/4 +. Se les suele llamar interruptores porque cuando toman los valores 0 ó 1 están simulando un interruptor abierto/cerrado o encendido/apagado. Ejemplo 1: Leer un número entero N y calcular el resultado de la siguiente serie: 1 .. "F" Sino Serie . 17. 15. 1800. 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) . 12.Fin Ejemplo 2. Sumser de tipo entero.. 7. 5.. es el acumulador de términos de la serie Band de tipo carácter.. es variable auxiliar que indica si al siguiente término de la serie hay que sumarle 3 ó 2. . Obtener suma de los términos de la serie: 2. 10. Enlaces patrocinados Entrenamiento Formacion y Certificacion de instructores.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.com.LSBF. Informate Aqui! www.es/OnlineEnlaces patrocinados Representación pseudocodificada : Español Inglés Repetir Repeat Acciones Acciones .mdc1. cursos y talleres www. Estructura repetir.Fin Capítulo 17: Estructuras iterativas. 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. Solución. También podrás observar que la condición está al revés.¿Podrás decir cuál será ahora la diferencia? Las reglas para construcción de esta estructura usando Repetir. En el bucle Mientras. que en esta estructura el bucle se realizará por lo menos una vez. A diferencia de la estructura Mientras. . la condición se evaluaba mientras era cierta. porque el bucle se repite hasta que la condición se cumpla. Esto quiere decir. ahora utilizando la estructura Repetir. nos dicen que debemos declarar una variable contador que debe inicializarse antes del ciclo e incrementarse dentro del ciclo. Nuevamente resolveremos el ejercicio de las dos lecciones anteriores. 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. 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 . 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. La inicialización consiste en asignarle al contador un valor. Se situará antes y fuera del bucle.Estructura Repetir En esta lección estudiaremos la forma general de la estructura Desde/Para. debemos hacer uso de contadores y algunas veces de acumuladores. 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. . Los contadores se utilizan con la finalidad de contar sucesos o acciones internas de un bucle. deben realizar una operación de inicialización y posteriormente las sucesivas de incremento o decremento del mismo.Google. 7. Esta es una de sus características. su uso y ejemplos. Para utilizar esta estructura en algoritmos. 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. y Correo Gmail Gratis Abre tu Cuenta en Google.3 GB de Capacidad y Accesible Desde Móviles Mail. Mientras y luego Repetir. . 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. Ejemplo 2.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. Se desea resolver el problema usando estructura Desde. 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. el acumulador va aumentando en una cantidad variable. pero la diferencia con el contador N. En este ejemplo hemos utilizado un bucle repetir. Dentro del bucle podrás notar que N se incrementa en 1.Elaborar un flujograma para encontrar la suma de los K primeros números enteros. es cómo funcionan el contador y el acumulador. el cual estudiaremos en otra lección. antes de entrar al bucle. . Lo que queremos hacer notar por el momento. el cual se inicializa en este caso. También observa la variable suma. que al inicio no tenemos nada. usando la estructura Desde/Para. Nota que N es el contador. es que a suma le sumamos N más ella misma. Dentro del bucle. También debe inicializarse con cero. es decir. ya que para sumar valores debemos partir de cero. suma se incrementa en un número N. la cual es un acumulador que lleva la suma de los números generados. con cero. EJERCICIO: Trata de elaborar un flujograma para encontrar el cuadrado de los primeros 25 números naturales. . Dentro del cuerpo del bucle Desde. La instrucción del cuerpo del bucle de una instrucción Desde puede utilizar el valor de la variable de control. los valores de las variables que especifican los valores inicial y final pueden cambiar. También aprendimos a elaborar flujogramas o algoritmos usando la estructura Desde. 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. ¿Qué necesitas agregar ahora? RESUMEN En esta lección aprendimos un poco del uso de contadores y acumuladores. Esta estructura hace el incremento automáticamente y se inicializa en la instrucción desde.¿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. pero no debe modificar este valor. Esta estructura se puede usar únicamente en aquellos casos en que conocemos el número de veces que se va a realizar el ciclo. pero esto no va a afectar al número de repeticiones.