COMO FUNCIONA UN WHILE EN UN FLUJOGRAMA

Posted by juan On jueves, 8 de julio de 2010 0 comentarios






Sentencia while
Es un bucle o sentencia repetitiva con una condicion al principio. Se ejecuta una sentencia mientras sea cierta una condición. La sentencia puede que no se ejecute ni una sola vez







Ejercicio No: 8
Desarrolle un algoritmo que permita leer dos números y ordenarlos de menor a mayor, si es el caso.
Pseudocódigo




Diagrama de Flujo
1. Inicio
2. Declaración de Variables:
A = 0, B = 0, Temporal = 0
3. Leer A y B
4. Si A B
No
Si
Temporal = B Si
B = A
A = Temporal”
“Orden = “ A , B
Fin



FUNCION DE WHILE EN JAVA

Posted by juan On 0 comentarios










Aprendiendo JAVA (VI)
Por francisco 13 de Octubre del 2007

El bucle WHILE al contrario del bucle DO – WHILE primero evalúa la condición y después se ejecuta. Esto puede llevar a que, si en la primera evaluación la condición no se cumple, el bucle no se ejecutara nunca.
Abriremos nuestro editor Eclipse y crearemos un nuevo proyecto al que llamaremos quinto y al que añadiremos una clase llamada whle. Para comprobar lo dicho añadiremos el siguiente código:
public class whle {
void EntroBucle(){
int primero=20;
int segundo=30;
boolean Entro=false;
while(primero>segundo){
System.out.println("Entro");
Entro=true;
}
if(!Entro){
System.out.println("No Entro");
}
}
}
En este código creamos un método void, es decir que no devuelve ningún valor. En el bucle while evaluamos la expresión primero mayor que segundo. Esta condición no se cumplirá nunca, así que el bucle no se ejecutara ninguna vez.
También podemos comprobar que no hemos creados ningún método del tipo:
Whle{
Codigo;
}
Es decir esta clase no tiene constructor. Si una clase no tiene constructor java le otorga un constructor por defecto, que es un constructor vacío.
Para probar este código creamos la clase testwhli como de costumbre seleccionando la opción public static void main(String[] args) y ponemos el siguiente código:
public static void main(String[] args) {
whle MiBucleWhile = new whle();
MiBucleWhile.EntroBucle();
}
El resultado sera:






En cambio se modificamos la línea 6 del código en la que se efectúa la evaluación de la condición y le ponemos: primero menor que segundo. El resultado será y NO os aconsejo que lo EJECUTÉIS porque nos encontramos ante un bucle sin fin. Dado que primero siempre será menor que segundo, si no ponemos alguna condición dentro del bucle que nos haga salir del mismo nunca parara.





También existen otros casos curiosos y útiles como son por ejemplo los bucles WHILE sin ningún cuerpo de código, es decir vacíos.
Imaginemos que debemos encontrar el punto medio entre dos números que nos de un usuario. Podríamos crear un método al que llamaríamos PuntoMedio cuyo código quedaría más o menos así:
void PuntoMedio(){
System.out.println("*****************************");
System.out.println("Introduce un numero");
PrimerNumero = sc.nextInt();
System.out.println("Introduce otro numero");
SegundoNumero = sc.nextInt();
if (PrimerNumero

La sentencia while


La sentencia while es otro ciclo o bucle disponible en C. Su formato es:
while ( expresion) sentencia;
donde sentencia puede ser una sentencia vacía, una sentencia única o un bloque de sentencias que se repetirán. Cuando el flujo del programa llega a esta instrucción, primero se revisa si la condición es verdad para ejecutar la(s) sentencia(s), y después el ciclo while se repetirá mientras la condición sea verdadera. Cuando llega a ser falsa, el control del programa pasa a la línea que sigue al ciclo.
En el siguiente ejemplo se muetra una rutina de entrada desde el teclado, la cual se cicla mientras no se pulse A:
main()
{
char carac;
carac = '\0';
while( carac != 'A') carac = getchar();
}

Antes de entrar al ciclo se inicializa la variable carac a nulo. Después pasa a la sentencia while donde se comprueba si carac no es igual a 'A', como sea verdad entonces se ejecuta la sentencia del bucle (carac = getchar();). La función getchar() lee el siguiente carácter del flujo estándar (teclado) y lo devuelve, que en nuestro ejemplo es el caracter que haya sido tecleado. Una vez que se ha pulsado una tecla, se asigna a carac y se comprueba la condición nuevamente. Después de pulsar A, la condición llega a ser falsa porque carac es igual a A, con lo que el ciclo termina.
De lo anterior, se tiene que tanto el ciclo for, como el ciclo while comprueban la condición en lo alto del ciclo, por lo que el código dentro del ciclo no se ejecuta siempre.
A continuación mostramos otro ejemplo:
main()
{
int x=3;
while( x>0 )
{
printf("x = %d\n", x);
x--;
}
}

que genera la siguiente salida en pantalla:
x = 3
x = 2
x = 1

Como se observa, dentro del ciclo tenemos más de una sentencia, por lo que se requiere usar la llave abierta y la llave cerrada { ... } para que el grupo de sentencias sean tratadas como una unidad.
Como el ciclo while pueda aceptar también expresiones, y no solamente condiciones lo siguiente es válido:while ( x-- );
while ( x = x + 1 );
while ( x += 5 );

Si se usan este tipo de expresiones, solamente cuando el resultado de x--, x=x+1 o x+=5 sea cero, la condición fallará y se podrá salir del ciclo.
De acuerdo a lo anterior, podemos realizar una operación completa dentro de la expresión. Por ejemplo:
main()
{
char carac;
carac = '\0';
while ( (carac = getchar()) != 'A' )
putchar(carac);
}

Instrucción while

La instrucción while permite ejecutar un bloque de instrucciones mientras se de una cierta instrucción. Su sintaxis de uso es:

while ()


Su significado es el siguiente: Se evalúa la indicada, que ha de producir un valor lógico. Si es cierta (valor lógico true) se ejecutan las y se repite el proceso de evaluación de y ejecución de hasta que deje de serlo. Cuando sea falsa (false) se pasará a ejecutar la instrucción siguiente al while. En realidad puede ser una única instrucción o un bloque de instrucciones.

Un ejemplo cómo utilizar esta instrucción es el siguiente:

using System;

class HolaMundoWhile
{
public static void Main(String[] args)
{
int actual = 0;

if (args.Length > 0)
while (actual < args.Length)
{
Console.WriteLine(“¡Hola {0}!”, args[actual]);
actual = actual + 1;
}
else
Console.WriteLine(“¡Hola mundo!”);
}
}

En este caso, si se indica más de un argumento al llamar al programa se mostrará por pantalla un mensaje de saludo para cada uno de ellos. Para ello se usa una variable actual que almacena cuál es el número de argumento a mostrar en cada ejecución del while. Para mantenerla siempre actualizada lo que se hace es aumentar en una unidad su valor tras cada ejecución de las del bucle.

Por otro lado, dentro de las de un while pueden usarse dos instrucciones especiales:

break;: Indica que se ha de abortar la ejecución del bucle y continuarse ejecutando por la instrucción siguiente al while.

continue;: Indica que se ha de abortar la ejecución de las y reevaluarse la del bucle, volviéndose a ejecutar la si es cierta o pasándose a ejecutar la instrucción siguiente al while si es falsa.

Algoritmo y flujograma

Posted by juan On 0 comentarios

Las estructuras repetitivas o iterativas son: aquellas en las que las acciones se ejecutan un número determinado de veces y dependen de un valor predefinido o el cumplimiento de una determinada acción.

Características
Las estructuras repetitivas permiten representar aquellas acciones que pueden descomponerse en otras sub-acciones primitivas.
Es una estructura con una entrada y una salida en la cual se repite una acción un número determinado o indeterminado de veces .
En una Estructura Repetitiva Mientras (While) se repite una acción mientras se cumpla la condición que controla el bucle. La característica principal de esta estructura es lque la condición es evaluada siempre antes de cada repetición.


La estructura repetitiva Desde(FOR) permite que las instrucciones las cuales contiene en su ámbito, se ejecuten un número de veces determinado.
Entre las estructuras repetitivas se encuentran:
Mientras (while)
Repetir (repeat)
Estructura Mientras (while)


La estructura repetitiva while, es aquélla en que el cuerpo del bucle se repite mientras se cumple una determinada condición, su representación gráfica es:
Pseudocódigo en español Pseudocódigo en inglés
Mientras condición hacer while condición do
Acción S1
Acción S2 :
: End_while
acción Sn
Fin_mientras

Diagrama N-S

1er. Ejemplo:
Contar los números enteros positivos introducidos por teclado. Se consideran dos variables enteras NUMERO y CONTADOR (contará el número de enteros positivos). Se supone que se leen números positivos y se detiene el bucle cuando se lee un número negativo o cero.
Pseudocódigo
Inicio
contador 0
Leer (numero)
Mientras numero > 0 hacer
contador contador+1
Leer (numero)
Fin_Mientras
Escribir('El número de enteros positivos es : ', contador)
Fin

Diagrama de Flujo – 1er. Ejemplo

2do. Ejemplo
Se presenta algoritmo para el cálculo de la sumatoria de los n primeros términos de la siguiente serie:
1*2*3 + 2*3*4 + 3*4*5 + 4*5*6
//WHILE_
#include
#include
main(){
int i=0, n;
float termino, suma=0;

clrscr(); cout << "Digite el valor de N: "; cin >> n; cout << "\n";
while( ii = i + 1;
termino = i * (i+1) * (i+2);
suma = suma + termino;
cout << i << " * " << i+1 << " * " << i+2 << " = " << termino << endl;
}
cout << "\nSumatoria = " << suma;
}

USO DEL BLUCLE WHILE

Posted by juan On 0 comentarios

Bucle while


El Bucle while o bucle mientras es una estructura de la mayoría de los lenguajes de programación estructurados cuyo propósito es repetir un bloque de código mientras una condición se mantenga verdadera.


Sintaxis
La sintaxis en pseudocódigo es la siguiente:



Condición:La condición ha de ser una sentencia que devuelva un valor booleano, y esta puede ser el valor booleano en sí, verdadero(true) si la condición se cumple, o falso si esta no se cumple(false). También puede contener el nombre de una variable booleana, y el valor de la expresión dependerá de su contenido. Se debe tener en cuenta que además de las variables también puede haber llamadas a funciones que devuelvan un valor.


Sentencias Comparativas
La forma más obvia tal vez, y la más usada sin duda, son las sentencias comparativas, que usan los operandos igual, diferente, menor o igual, mayor o igual, menor y mayor. En el caso del lenguaje C, se utilizan los siguientes símbolos para representar las comparaciones anteriores: ==, !=, <=, >=, <, >,
Particularidades de lenguajes:
En algunos lenguajes, se pueden utilizar variables no booleanas en la comparación: Por ejemplo, si la variable vale 0 será como si la condición no se cumpliera, y siempre que sea diferente de 0, se considerará que la condición se cumple.


Ejemplo (usando sintaxis de C) int Tecla = 0;
while(Tecla == 0)
{
Tecla = readkey(); /* Intentamos leer una pulsación de tecla*/
}
En este ejemplo el programa va a leer la pulsación de una tecla mientras su valor sea igual a cero, en el momento en el que se pulse una Tecla distinta, se detendrá.



Ejemplo (usando el lenguaje Lexico)
Genera y muestra los primeros 10 números naturales:tarea
{
el objeto número_natural es una cantidad
copie 0 en número_natural
mientras número_natural <>


donde:
condicion es la expresión a evaluar
Ejemplo 1:
int contador = 0;

while(contador<=10) { contador=contador+1; cout<<"Hola Mundo";