P. 1
Estructura de repetición while

Estructura de repetición while

1.0

|Views: 6.290|Likes:
Publicado poredwimwen
Estructura while
Estructura while

More info:

Published by: edwimwen on Nov 16, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/03/2015

pdf

text

original

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 Mientras <condición> Acciones Fin_mientras Inglés While <condición> do Acciones 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-estructuramientras 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.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->