Ahora con nuevo dominio, para que tu acceso a la página sea mas fácil.  

 www.cmasmas.es.mn

-----------------------------------------------------------

WHILE

Estructura repetitiva.

Esta estructura también es llamada estructura MIENTRAS o MIENTRAS-QUE.  El while permite la ejecución de una o más instrucciones, de acuerdo a la evaluación de una expresión de tipo lógico.  Dicha expresión es la que determina si las instrucciones se repiten o dejan de ejecutarse.

Se deben considerar dos subpartes en esta estructura, una sería la expresión de tipo lógico, actúa cada vez que se intenta repetir el proceso y, el conjunto de instrucciones en el cual debe haber aunque sea una que autorice modificar el resultado de la expresión lógica.  Si no existiera esta modificación la repetición se convertiría en un ciclo infinito.

Representación

MIENTRAS <expresión lógica> HAGA

   <secuencia>

FIN_MIENTRAS

Ejemplo

MIENTRAS A>B HAGA

   ESCRIBA: A

   A=A-1

FIN_MIENTRAS

Funcionamiento

Cuando la ejecución del programa llega a la estructura, se evalúa la expresión de tipo lógico, al hacer esta evaluación, saldrá uno de dos posibles resultados.  Falso o verdadero.

Si es falso:  no se ejecutarán las instrucciones, y se seguirá con la siguiente estructura si es que la hay.

Verdadero:  se realiza la ejecución una ves, regresa y evalúa la expresión, si es verdadera se repite el proceso hasta que se haga falsa la expresión lógica.

Variables contadoras

En muchas ocasiones se requiere hacer una contaduría de acciones dentro del ciclo, se hace mediante una variable contadora que se incrementa o decrementa cada vez que se repite el ciclo.  Se decrementa o disminuye en un valor constante.

CONTADOR=CONTADOR+<valor constante>

Como el contador aparece al lado derecho en la expresión, antes de usarse se le debe dar un valor que borre lo que había en la dirección de memoria asignada a la variable utilizada.  Esa orden de borrado debe indicarse una ves; por lo tanto, debe estar antes de activarse el ciclo donde se necesite el contador, de lo contrario se repetirá la orden de borrado cada vez que se repite el ciclo.  Ejemplo:

Una orden de borrado puede ser:  CONTADOR = 0.

Variables acumuladoras

Una variable acumuladora o totalizadora tiene como misión almacenar cantidades variables resultantes de procesos sucesivos.  La diferencia con el contador radica en que el incremento o disminución de cada suma es variable en lugar de constante, como en el caso del contador.

La forma general del acumulador es:

ACUMULADOR=ACUMULADOR+<expresión>

Como también aparece al lado derecho, antes de utilizarlo se hace necesario asignarle un valor inicial, por ejemplo:  ACUMULADOR=0.

-----------------------------------------------------------

Código que encuentra la suma de los primeros 5 números naturales.

#include<conio.h>
#include<iostream.h>
main()
{
clrscr();/*Se limpia pantalla.*/
int contador,acumulador;/*Declaración de variables.*/
contador=0;/*Se inicializa el contador.*/
acumulador=0;/*Se inicializa el acumulador.*/
while(contador<5)
{
contador=contador+1;/*Esta línea permite que la expresión de tipo lógico llegue a evaluarse como falsa.*/
acumulador=acumulador+contador;/*Se actualiza el totalizador.*/
}/*Se termina el ciclo cuando el contador cobra el valor de 5.*/
cout<<"La suma de los primeros 5 n£meros naturales es: "<<acumulador;
getch();/*Se detiene la ejecución del programa.*/
return 0;
}

Programa que encuentra la suma de los primeros 5 números naturales.

Código que cuenta caracteres de un texto ingresado (espacios, dígitos, puntuación, mayúsculas, minúsculas, vocales, consonantes).

#include<ctype.h>
#include <iostream.h>
#include<stdio.h>
#include<conio.h>

int main()
{
clrscr();
int consonantes = 0;
int vocales = 0;
int digitos = 0;
int mayusculas = 0;
int minusculas = 0;
int espacios = 0;
int puntuacion = 0;
char c; // caracteres leídos desde el teclado
cout << "Contaremos caracteres hasta que se pulse ctrl + z"
<< endl<<endl<<endl<<endl;
while((c = getchar()) != EOF)
{
if(isdigit(c)) digitos++;
else if(isspace(c)) espacios++;
else if(ispunct(c)) puntuacion++;
else if(isalpha(c))
{
if(isupper(c)) mayusculas++; else minusculas++;
switch(tolower(c)) {
case 'a':
case 'e':
case 'i':
case 'o':
case 'u':
vocales++;
break;
default:
consonantes++;
}
}
}
cout <<endl<<endl<< "Resultados:" << endl;
cout << "Dígitos: " << digitos << endl;
cout << "Espacios: " << espacios << endl;
cout << "Puntuación: " << puntuacion << endl;
cout << "Alfabéticos: " << mayusculas+minusculas << endl;
cout << "Mayúsculas: " << mayusculas << endl;
cout << "Minúsculas: " << minusculas << endl;
cout << "Vocales: " << vocales << endl;
cout << "Consonantes: " << consonantes << endl;
cout << "Total: " << digitos + espacios + vocales +
consonantes + puntuacion << endl;
cin.get();
getch();
return 0;
}

Programa que cuenta caracteres de un texto ingresado (espacios, dígitos, puntuación, mayúsculas, minúsculas, vocales, consonantes).

-----------------------------------------------------------

Si encuentras algún error en las temas aquí explicados, te rogamos el favor nos lo hagas saber a cmasmascc@hotmail.com

-----------------------------------------------------------

Empresa amiga-->   pcXPertos ®