Estructura while.
Definición:
Una de las estructuras de repetición empleada en la programacion de algoritmos. While
permite al programador especificar las veces que se repita una acción (una o más
sentencias de programacion) mientras una condición se mantenga verdadera.
– Repite una acción mientras (while) alguna condición permanezca con valor
true
– La “acción” puede ser una sentencia simple o compuesta
– Si la condición inicialmente es false, entonces la “acción” nunca se ejecutará
Funcionamiento del while: En primer lugar se verifica la condición, si la misma resulta
verdadera se ejecutan las operaciones que indicamos entre las llaves que le siguen al while.
En caso que la condición sea Falsa continúa con la instrucción siguiente al bloque de llaves.
El bloque se repite MIENTRAS la condición sea Verdadera.
Importante: Si la condición siempre retorna verdadero estamos en presencia de un ciclo
repetitivo infinito. Dicha situación es un error de programación, nunca finalizará el
programa.
Esta estructura tiene el siguiente formato:
NOTA: Si sólo consta el while de una sentencia, entonces podemos prescindir de las
llaves ( { } ).
Observa en el flujograma, que se necesita una variable contadora (un índice), para llevar la
cuenta de las veces que entramos al cuerpo del ciclo. 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, por lo general en uno.
Esta variable a la vez, nos sirve para compararla con el valor dado en la condición, cuando
se cumple la condición, se sale del ciclo.
Representación pseudocodificada:
Español Inglés
Mientras <condición> While <condición> do
Acciones Acciones
Fin_mientras end_while
Un error muy comun con el while, es poner un punto y coma (;) despues de la (condición)
ejemplo while (condicion); ←-esto es y causa un error.
La condición es cualquier expresión simple que al evaluarse devuelve el valor
verdadero o falso. El bucle se repite mientras la condición sea verdadera. Cuando es
falsa, el programa pasa a la instrucción siguiente, después del cuerpo de la
estructura.
Si quisiésemos hacer el equivalente del for con el while pondríamos:
Si: for (expresión 1; expresión 2; expresión 3) sentencia
con el while sería:
expresión 1;
while (expresión 2) {
sentencia
expresión 3;
}
Tanto el while como el for son muy usados para recorrer arrays y cadenas de
caracteres.
Ejemplos de estructura while:
#include <stdio.h>
#define N 5
void main() {
int cont = 1;
float media, suma = 0;
int lista [N] = {3,5,7,9,11};
printf("Media de los numeros 3, 5, 7, 9 y 11.\n");
while (cont <= N){
suma = suma + lista[cont-1];
++cont;
media = suma/N;
printf("La media es: %f\n",media);
}
Ejemplo 1:
#include <stdio.h>
main() { /* visualizar los números del 0 al 9.*/
int digito=0;
while (digito<=9) {
printf"%d ",digito);
++digito;
}
}
Visualizará: 0 1 2 3 4 5 6 7 8 9
NOTA: Inicialmente se le asigna a digito el valor de cero. El bucle while visualiza el
valor actual de digito, incrementando su valor en uno y repitiéndose el ciclo, hasta
que el valor de digito sea mayor que 9. El efecto total es que el cuerpo del bucle se
repetirá diez veces, generándose diez visualizaciones de salida. Como en la
instrucción printf no hemos puesto un \n de salto de línea, entonces, los números
del 0 al 9 aparecerán seguidos, y sólo separados por un espacio en blanco, que es el
que aparece entre comillas en la instrucción printf.
Ejemplo 2:
#include <stdio.h>
main() {
int i=0, j=0, final=40;
while(i<final) {
i=j*10;
printf("%d\n",i);
j++;
}
j=100; /* sentencia que ejecutamos cuando deje de cumplirse la
condición del while. */
}
Visualizará: 0
10
20
30
40
Traza:
1ª comprobación del bucle: (0<40), cierto.
2ª comprobación del bucle: (0<40), cierto.
3ª comprobación del bucle: (10<40), cierto.
4ª comprobación del bucle: (20<40), cierto.
5ª comprobación del bucle: (30<40), cierto.
6ª comprobación del bucle: (40<40), falso,
entonces, nos vamos a la sentencia: j=100;.
EJEMPLO 3:
Calcular la suma de los cuadrados de los primeros 100 números enteros y escribir el
resultado.
Solución.
Como recordarás, resolvimos este ejercicio en la lección anterior pero utilizando la
estructura Desde. Hoy lo haremos con la estructura Mientras.Que tendremos de diferente?
Ejemplo 4:
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
{
clrscr();
// declaracion variables
int x=1;
// instruccion while
while(x<=10)
{ gotoxy(10, x+3); printf("%d PATO",x); x++; };
getchar();
Corrida:
While puede llevar dos condiciones en este caso inicializar 2 variables de condición y
cuidar que existan 2 de rompimiento o terminación de ciclo.
El grupo cierto de instrucciones puede ser una sola instrucción o todo un grupo de
instrucciones.
La condición puede ser simple o compuesta.
Los casos generales de for tambien se aplican a while.
A este ciclo también se le conoce también como ciclo de condición de entrada o prueba por
arriba porque este ciclo evalúa primero la condición y posteriormente ejecuta las
instrucciones.
http://decsai.ugr.es/~jfv/ed1/c/cdrom/cap4/cap44.htm
http://www.mailxmail.com/curso-aprende-programar/estructuras-iterativas-estructura-
mientras
http://www.programacionfacil.com/cpp:ciclo_while
OBJETIVO GENERAL:
Se pretende que con esta investigación se tenga un conocimiento de los
aspectos básicos del diodo, principalmente de su funcionamiento y
comportamiento.
OBJETIVO ESPECIFICO:
Diferenciar los distintos tipos de iodos que existen en nuestro alrededor.
Conocer las aplicaciones de los iodos.