27. Un bucle while tiene una condición del bucle (expresión lógica) que controla la secuencia de repetición. La ejecución de la(s) sentencia(s) se repite mientras la condición del bucle permanece verdadera y termina cuando se falsa. Sintaxis: Cuerpo Del Bucle while (condición) { sentencia 1; sentencia 2; ::: sentencia n; } while (condición) sentencia; Primero se pregunta y luego de Ejecuta Es una expresión lógica o booleana
28. Ejemplo de un bucle o estructura repetitiva, que permite mostrar por pantalla los números enteros del 1 al 100. Bucle controlado con contador int cont = 1; //Inicializar cont while (cont <= 100) //Control del bucle { cout << cont << endl; /*Imprime el contenido de cont*/ ++cont; /*Incrementa cont, cuando llegue a 100 se saldr á del bucle*/ }
29. Ejemplo que lee varias notas (no se saben cuentas) las acumula y cuenta dentro del bucle. Al terminar de procesar todas las notas, usa un valor centinela (-1) como último dato, para salirse del ciclo y por último, calcular e imprimir el promedio. Bucle controlado con valor centinela int nota, suma = 0, cont = 0; const int CENTINELA = -1; cout<<"Ingrese la nota (-1) para finalizar : "; cin>>nota; while (nota != CENTINELA) { suma += nota; ++cont; cout<<"Ingrese la nota (-1) para finalizar : "; cin>>nota; } cout << "El promedio de notas es : " << suma/cont << endl;
30. Es el usuario el que tiene la potestad de continuar o no con el bucle, respondiendo a una pregunta que se le hace, relacionada con el control del mismo. A continuación se ilustra esta técnica con el ejemplo anterior. Bucle controlado preguntando al usuario si desea la continuación del ciclo int nota, resp, suma = 0, cont = 0; cout<<"Existe alguna nota (1)SI (2)NO : "; cin>>resp; while (resp == 1) { cout<<"Ingrese la nota : "; cin>>nota; suma += nota; ++cont; cout<<"Existe alguna nota (1)SI (2)NO : "; cin>>resp; } cout << "El promedio de notas es : " << suma/cont << endl;
31. La sentencia do-while se utiliza para especificar un bucle condicional que se ejecuta al menos una vez. Si condición es verdadera, entonces se repite la ejecución de sentencia, este proceso continúa hasta que la condición es falsa. Sintaxis: do sentencia; while (condición) do { sentencia 1; sentencia 2; ::: sentencia n; } while (condición) Cuerpo Del Bucle Primero se ejecuta y luego se pregunta
32. Ejemplo donde el bucle se repetirá mientras el carácter leído no sea un dígito y se termina cuando se introduzca un carácter que es un dígito. char caracter; do { cout<<"Ingrese digito (0-9) : "; cin>>caracter; } while (caracter < '0' or caracter > '9'); cout<<"El digito es : "<<caracter<<endl;
33. Si conocemos exactamente la cantidad de veces que necesitamos repetir un conjunto de sentencias, entonces podemos usar un bucle for. La sentencia for es un método para ejecutar un bloque de sentencias un número fijo de veces. Sintaxis: for (inicializacion; condicion iteración; incremento ) { conjunto de sentencias } Inicializa la variable de control del bucle Incrementa o Decrementa la variable de control del bucle Expresión lógica que determina si las sentencias se han de ejecutar, mientras sea verdadera
34. Ejemplo, donde se suman los 10 primeros números enteros y se imprime el resultado obtenido. int suma = 0; for (int n = 1; n <=10; n++) suma += n; cout << "La suma de los primeros 10 numeros es:” << suma << endl;
35.
36.
37.
38.
39. A continuación se muestra la definición de la función LeerNombre, string LeerNombrePersona() { string nom; //variable local de la función cout << "Ingrese nombre de la persona"; cin.sync(); /*limpia el Buffer antes de leer el string nom*/ getline(cin,nom); //lee nom de tipo string return nom; //retorna la variable nom }