domingo, 5 de septiembre de 2010

Estructura de programacion FOR

La estructura de control for es una de las mas utilizadas
nos sirve para hacer iteraciones y generalmente la utilizamos
cuando conocemos la cantidad de veces que necesitamos iterar,
aunque es posible utilizar el for para iterar infinitamente.


la estructura de control for consta de cuatro elementos
for( tarea_de_inicializacion ; parte_condicional ; tarea_final_por_iteración)
{
    código a ejecutar en cada iteración



nota:Ninguna de las áreas es indispensable y puede ir vacía


Tarea de inicializacion: Se ejecuta solo una vez, al inicio antes de empezar a iterar
por lo general declaramos las variables de control, pero podemos hacer
cualquier cosa, imprimir por ejemplo y podemos ejecutar mas de una instrucción



ejemplo




int i=10;


PrintStream out= System.out;
   for(out.println("1"),out.println("2");i<1;i++);

imprime 
1
2
Y es todo lo que hace
También podemos declarar múltiples variables 
en este ejemplo crearemos un arreglo con 5 elementos
y lo guardaremos en otro arreglo pero con los elementos invertidos, 
Aquí también utilizamos que la tarea final por iteración  ejecute mas de una 
instrucción. como imprimir, asignar, llamar funciones, eso si cada instrucción 
tiene que estar separada por comas en vez de punto y coma":" 
dentro de esta area se puede escribir un sistema operativo completo 
si tienen el suficiente ingenio.






int [] a1 = {6,7,8,9,10};
    int [] a2 = new int[a1.length];
    for(int i=0,j=a1.length-1; i< a1.length;i++,j--)
        a2[i] = a1[j];
Para imprimirlo
    for(int i=0;i<a2.length;System.out.println(a2[i++]));


En el siguiente ejercicio mostraremos el orden de ejecucion de cada uno de los elementos de la estructura de control excepto la parte condicional la cual se ejecuta antes de la tarea final por iteración






int i=0;





for(out.println("se imprime una vez al inicio");i<10;out.println("se imprime después y muchas veces"),i++)
        out.println("se imprime primero y muchas veces");

La salida es

se imprime una vez al inicio
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces
se imprime primero y muchas veces
se imprime después y muchas veces

para iterar infinitamente simplemente no ponemos nada en la parte condicional
Ejemplo:





for(;;System.out.println("jeje"));
esto imprime infinitamente "jeje"

también en conjunto con el for podemos utilizar las instrucciones continue,break,return
para cambiar el comportamiendo de las iteraciones
por ejemplo para imprimir todos los números del 1 al 20 pero sin imprimir los que estan entre 5 y el 15
También utilizamos el break para parar de iterar en el for cuando va en el 20 y no continuar hasta el 30. Si queremos para en algún momento y salirnos de la función podemos utilizar en vez del break el return






for(int i=1;i<30;i++)
{
        if( i>=5 && i<=16)
            continue;

        System.out.println(i);

        if( i== 20)
            break;
}
la salida es 
1
2
3
4
17
18
19
20
Asi es compañaros en desvelos si quieren tener un mejor código o escribir que asegure su permanencia en la empresa (Job security en ingles) escribiendo código que solo ustedes entienden y que posiblemente también van a olvidar no duden en utilizar las ventajas del for.

1 comentario: