miércoles, 21 de enero de 2015

ESTRUCTURAS DE DATOS ESTATICAS VECTORES


Realizaremos una serie de entradas dedicadas a las estructuras de datos, empezaremos con las estructuras de datos estáticas.

Definición:

Que es una estructura?

Según el diccionario se define como estructura:

1.    “Distribución y orden de las partes importantes de un edificio

2.    Distribución de las partes del cuerpo o de otra cosa.

3.    Distribución y orden con que esta compuesta una obra de ingenio, como un    poema, una historia etc.

4.    Arq. Armadura, generalmente de acero u hormigón armado, que, fija al suelo, sirve de sustentación a un edificio”.


La palabra estructura proviene del latin structura y se refiere a la disposición y orden de las partes.

De acuerdo a las definiciones anteriores podemos concluir que una estructura de datos son un conjunto de estos ordenados o distribuidos que nos facilita el proceso de programación.

Porque estáticas?

Volvamos al diccionario  y veamos como se define la palabra estático.

Estático:

1.    “Que permanece en un mismo estado y no experimenta cambios

2.    Se aplica a la persona que se queda parada a causa de una emoción”


Podemos decir entonces que las denominamos estructuras de datos estáticas porque ni su  tamaño ni su posición en memoria varían sino que permanece como se define desde el principio en el programa

    VECTORES
 
Un vector nos permite almacenar  N elementos del mismo tipo, para acceder a cada elemento del vector lo podemos hacer mediante un numero entero que se denomina índice.
En lenguaje c la definición de un vector tiene la siguiente sintaxis:
Tipo_de_dato nombre_vector[tamaño];
Ejemplo:
Int edades[100];
En este vector podremos almacenar la edad de 100 personas.
Ahora veamos un ejemplo:


En este ejemplo llenamos un vector con la edad de 10 personas, esta información la solicitamos por pantalla. Luego invocamos una función que recibe como parámetro el vector con las edades y calcula el promedio de edades.





1.      #include<stdio.h>

2.      #include<conio.h>

3.      #include<graphics.h>

4.      #include<dos.h>

5.      double calcular_promedio(int v1[]);

6.      void main()

7.      {

8.        Int edades[10];

9.        Int p=0,edad=0;

10.    Double promedio = 0;

11.    For ( p=0; p<=10;p++)

12.    {

13.       Printf(“Ingrese la edad para la posición %d” , p );

14.       Scanf(“%d”,&edad);

15.       Edades[p]=edad;

16.    }

17.    Promedio = calcular_promedio(edades);

18.    Printf(“El promedio de edad es %f”, promedio);

19.   Getch();

20.  }

21.   

22.  Doublé calcular_promedio(int v1[] )

23.  {

24.     Doublé prom = 0; suma = 0 ;

25.      Int p = 0;

26.      For ( p=0 ; p<= 10 ; p++ )

27.     {

28.       Suma= v1[p] + suma;

29.     }

30.      Prom = suma/10;

31.      Return prom;

32.  }

                
               

sábado, 17 de enero de 2015

USO DE LOS BUCLES


Los bucles o ciclos son instrucciones que nos permiten realizar acciones repetitivas dentro de nuestro programa hasta que la condición asignada deja de cumplirse. Para que la condición no se cumpla algún elemento dentro del ciclo debe variar.
Podemos entender mejor el concepto de ciclo si imaginamos la ruta de un mensajero que sale de la oficina postal entrega los encargos y vuelve a la oficina por mas encargos, para poder cumplir su trabajo el mensajero debe saber desde donde empieza su recorrido y donde termina además tiene que tener un control de cuantas veces retorna a la oficina por mas encargos.
Los ciclos o bucles nos dan más facilidad a la hora de hacerle mantenimiento al código ya que no tenemos que repetir las instrucciones.

En lenguaje c tenemos tres clases de bucles:

While(Mientras): Ejecuta una acción mientras se cumpla una condición, la estructura es la siguiente:

1.    While(condición)

2.    {

3.    //instrucciones

4.    }







Ejemplo:

1.       #include<stdio.h>
2.       #include<conio.h>
3.       #include<graphics.h>
4.       #include<dos.h>
5.       Void main()
6.       {
7.           int p=1 , q;
8.           printf(“Ingrese un numero:”);
9.          scanf(“%d”,& q);
10.      while (p<=q)
11.      {
12.       Gotoxy(10,p+3);printf(“%d”,p ) ;
13.       P++;
 14.     }
 15.     Getchar();
 16.   }

Do while( Haga hasta): Ejecuta una acción hasta que no se cumpla la condición dada, su estructura es la siguiente :


1.      Do{

2.      //instrucción

3.      }while(condición);
 


Ejemplo:

1.      #include<conio.h>

2.      #include<graphics.h>

3.      #include<dos.h>

4.      Void main()

5.      {

6.        Int p = 1 , q ;

7.       Printf(“Ingrese un número:”);

8.       scanf(“%d%” , & q );

9.       do{

10.        gotoxy(10,p+3);printf(“%d%”,p);

11.        P++;

12.   }while(p<=q);

13.   Getchar();

14.  }

For(para):Ejecuta una  acción desde un valor inicial hasta un valor final, se determina cuanto incrementar o cuanto disminuir en la variable de control durante las iteraciones , su estructura es la siguiente:




1.      For(p=1;p<10;p++)

2.      {

3.      //instrucciones

4.      }


 

1.      For (p=10;p>1;p--)

2.      {

3.      //instrucciones

4.      }


Ejemplo:

1.      #include<stdio.h>

2.      #include<conio.h>

3.      #include<graphics.h>

4.      #include<dos.h>

5.      Void main()

6.      {

7.      int p , q ;

8.      printf(“Ingrese un número:”);

9.      scanf(“%d%”,& q );

10.  for ( p=0; p<=q; p++ )

11.  {

12.  Gotoxy(10,p+4); printf(“%d”,p);

13.  }

14.  Getch();

15.  }