Wednesday 13 may 3 13 /05 /May 13:48

        Estructuras Iterativas


Introducción.

Para repetir varias veces un proceso determinado haremos uso de los ciclos repetitivos, a los cuales se les conoce con el nombre de estructura repetitiva, estructura iterativa, lazo o bucle.

En C, al igual que en Java podemos encontrar tres tipos de ciclos:

·         Entrada Asegurada (while)

·         Ciclo Controlado Por Contador (for)

·         Hacer Mientras (do.. while)


Funcionamiento de Un Ciclo

Un ciclo, funciona de la siguiente manera: Evalúa una condición de resultar cierta, realiza una acción o bloque de acciones, luego vuelve a evaluar la condición y si nuevamente resulta cierta, realiza la (s) acción (es). Cuando la condición de cómo resultado falso, se sale del ciclo y continúa con la ejecución normal del programa.

Acumulador:

Es una variable, que , como su nombre lo indica se encarga de acumular valores. Esto se vuelve muy útil, por ejemplo, cuando queremos encontrar la suma de los números del 0 al 9, en el acumulador, vamos guardando los valores de dichas cifras. Puede ser tanto real como entera. Su valor inicial, en la mayoría de los casos es cero.

Contador:

Es una variable de tipo entero, que nos ayuda, en el programa a contabilizar el número de ejecuciones de una misma acción, de un grupo de alumnos etc. Un acumulador tiene tres valores distintos:

·         Valor Inicial: es el valor con el cual iniciamos nuestro contador. Generalmente es cero. Esta asignación puede hacerse cuando se declara la variable.

·         Valor Final: después de la ejecución del ciclo, el valor del contador, será distinto a su valor inicial, este puede ser mayo o menor que el mismo, todo depende si fue una cuenta creciente o decreciente.

·         Valor de Cambio: Es el valor Constante, en el cual se irá incrementando nuestro contador, este puede ser positivo o negativo; es decir, si la cuanta se realiza de manera ascendente o descendente.

 

Bandera:


Las variables tipo bandera son aquellas que sólo admiten dos valores: cierto o falso, true o false, hombre o mujer... etc


Ciclo de Entrada Asegurada

La sintaxis es la siguiente:

while(condición)

       Acción;

Funciona de la siguiente manera: primero evalúa la condición, si da como resultado cierta realiza la acción, luego vuelve a evaluar la condición, si su resultado es falso, se sale del ciclo y continúa con la ejecución del programa. Hay que tener mucho cuidado, cuando trabajamos con ciclos, ya que podemos caer en un ciclo infinito, es decir que nunca se sale de él. Por lo cual en las acciones debemos siempre colocar algo que haga que se modifique el resultado de la condición, lo cual puede ser una bandera, un contador o un acumulador.

 

Ejemplo.

En una empresa, se desea  se tienen datos correspondientes a los sueldos de 10 empleados, de los cuales, se desea saber, quien goza del sueldo mayor, quien goza del sueldo menor y cuantos poseen un sueldo mayor a 300.

1    import javax.swing.*;
 2     class UsaWhile{
 3        public static void main (String args []){
 4          String leer;
 5          double sueldo, mayor=0, menor=10000;
 6          int i=1, contador=0;
 7          while(i<=10)
 8          {
 9             leer=JOptionPane.showInputDialog("Ingrese el sueldo del empleado: "+i);
10             sueldo=Double.parseDouble(leer);
11             while(sueldo<0)//si el sueldo es negativo
12             {
13                leer=JOptionPane.showInputDialog("ERROR, el sueldo no puede ser Negativo\nIngrese el sueldo del empleado: "+i);
14                sueldo=Double.parseDouble(leer);
15             }  
16             if(sueldo>300)
17                contador=contador+1;
18             if(sueldo>mayor)
19                mayor=sueldo;
20             if(sueldo<menor)
21                menor=sueldo;
22             i=i+1;
23          }
24          JOptionPane.showMessageDialog(null, "El sueldo mayor es de: "+mayor+"\nEl sueldo menor es: "+menor+"\n"+contador+" Empleados tienen un sueldo mayor a 300");
25       }
26    }

Ciclo Controlado por contador.


En algunas ocasiones, sabemos a ciencia cierta el número de veces que se tiene que repetir una misma acción o bloque de acciones. Y para ello es que nos sirve, esta estructura. Su sintaxis es la siguiente:


for(
valor inicial; condición; incremento)

        accion;

Donde:

Valor inicial: es el valor con el cual inicializamos nuestra variable de control.

Condición:  si la cumple, ejecuta la acción o acciones e incrementa o decrementa la variable de control, sino la cumple la condición, se sale del ciclo.

Incremento; que puede ser positivo o negativo (decremento).

 

Ciclo Do... while

Es te ciclo funciona de la siguiente manera, realiza la acción o conjunto de acciones, luego evalúa una condición de resultar cierta vuelve a realizar la/s accion/es. Cuando sea falsa, se sale del ciclo.

Formato :

          do {

               sentencia;

               .

               .

                } while(<expL>);

La diferencia fundamental, entre el ciclo while y do...while, es que en este ultimo, las sentencias se realizarán por lo menos una vez, en cambio, con while, solo se  cumplirán mientras se cumpla la condición, lo cual puede ser nunca.


Ejemplo.

Programa que suma los valores de n1, mientras estos no sean mayores que 100

1 class fibo{ 
2 public static void main(String args[]){            
3      int n1=0;              
4            do{       n1++;               
5                      System.out.println(n1+" ");
6          }while(n1<100);
7   }
8 }

 

Por Prof. Luis E. Aponte I.
Escribir un comentario - Ver los 1 comentarios
Volver a la página principal

Presentación

Crear un Blog

Calendario

December 2014
M T W T F S S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
<< < > >>
Crear un blog en OverBlog - Contacto - C.G.U - Remuneración por el programa "Gana con tu Blog" - Reportar un abuso