viernes, 26 de noviembre de 2010

ARREGLOS O ARRAYS

Un array o arreglo en C++ es un grupo de instrucciones que se guardan en memoria
 
Un arreglo en C++ es un conjunto de datos que se almacenan en memoria de manera seguida con el mismo nombre. Es una colección de variables del mismo tipo, todas las variables que pertenecen a un arreglo se denominan elementos.
Para diferenciar los elementos de un arreglo se utilizan índices detrás del nombre del arreglo y encerrados por []. El elemento 5° (quinto) de un arreglo, es representado por el índice [4], ya que los índices comienzan en 0. Esto significa que un arreglo de 10 elementos tendría los índices del 0 al 9: [0...9]
Ejemplos:

EJEMPLO DE CÓDIGO DONDE SE VISUALIZA UN ARREGLO

/Uso de arreglos en C++
#include
using std::cout;
using std::cin;
using std::endl;
int main()
{
int arregloEntero[10] = {0};
//Arreglo entero de 10 elementos inicializados todos en 0.
cout << "Arreglo recien declarado: \n" << endl;
for (int i = 0 ; i < 10 ; i++)
//Notar el menor estricto (<) para ir desde 0 hasta 9
cout << "ArregloEntero["<cout << "\nIntroduzca 10 nuevos valores " << endl;
for (int i = 0 ; i < 10 ; i++)
//Notar el menor estricto (<) para ir desde 0 hasta 9
{ cout << "Introduzca nuevo valor para arreglo Entero["<> arregloEntero[i];
}
cout << "\nLuego de los valores introducidos, el arreglo quedo asi: " << endl;
for (int i = 0 ; i < 10 ; i++)
//Notar el menor estricto (<) para ir desde 0 hasta 9
cout << "arreglo Entero["<

return 0;}

EN RESUMEN ES UN ARREGLO

*No es una variable, es un grupo de variables agrupadas conocidas como elementos.
*Cada elemento ocupa una posición dentro del grupo.
*Todos los elementos son del mismo tipo de dato.
*El nombre del arreglo indica donde se localiza el grupo en la memoria de la computadora.
*Los arreglos se clasifican de acuerdo a las dimensiones que tengan.
*Las dimensiones no tienen relación con el plano cartesiano, nada que ver con la matemática.
*Las dimensiones indican como están organizados los elementos dentro del grupo.
*Los arreglos de dos dimensiones pueden visualizarse con tablas.
*Los valores que se guarden en el arreglo se almacenan en los elementos ya que los elementos son variables.

VECTORES
Un vector, también llamado array(arreglo) unidimensional, es una estructura de datos que permite agrupar elementos del mismo tipo y almacenarlos en un solo bloque de memoria juntos, uno después de otro. A este grupo de elementos se les identifica por un mismo nombre y la posición en la que se encuentran. La primera posición del array es la posición 0.

Podríamos agrupar en un array una serie de elementos de tipo enteros, flotantes, caracteres, objetos, etc. Crear un vector en c++ es sencillo, seguimos la siguiente sintaxis: Tipo nombre[tamaño];

EJEMPLO DE CODIGO DE UN VECTOR

#include
using namespace std;
int main()
{
int dim;
cout << "Ingresa la dimension del vector" << endl;
cin >> dim; // Supongamos que ingrese 10
int vector[dim]; // mi vector es de tamaño 10

for(int i=0;i < dim;i++){

vector[i] = i * 10;
cout << vector[i] << " ";
}
return 0;
}

MATRICES

Una matriz es un vector de vectores o un también llamado array bidimensional. La manera de declarar una matriz es c++ es similar a un vector:
1
int matriz[fils][cols];
int es el tipo de dato, matriz es el nombre del todo el conjunto de datos y debo de especificar el numero de filas y columnas. Las matrices también pueden ser de distintos tipos de datos como char, float, double,etc.
Las matrices en c++ se almacenan al igual que los vectores en posiciones consecutivas de memoria. Usualmente uno se hace la idea que una matriz es como un tablero. Pero internamente el manejo es como su definicion lo indica, un vector de vectores, es decir, los vectores estan uno detras del otro juntos.
La forma de acceder a los elementos de la matriz es utilizando su nombre e indicando los 2 subindices que van en los corchetes. Si Coloco int matriz[2][3]=10; //estoy asignando al cuarto elemento de la tercera fila el valor 10. No olvidar que tanto filas como columnas se enumeran a partir de 0.

EJEMPLO DE CODIGO DE UNA MATRIZ

#include
#include
using namespace std;

int main (){
int matrix[50][50];
int tamano=0, i=0, j=0;
cout<<"Tamano de la matriz"< cin>>tamano;
cout<
for(i=0; i for(j=0; j matrix[i][j]=0;
}
}

for(i=0; i for(j=0; j
if(i if((i+j) >= ceil(tamano/2))
matrix[i][j]=1;

if(iceil(tamano/2))
if((j-i) <= ceil(tamano/2))
matrix[i][j]=2;

if(i>ceil(tamano/2) && j>ceil(tamano/2))
if((i+j) <= ceil(tamano/2 + tamano - 1))
matrix[i][j]=3;

if(i>ceil(tamano/2) && j if((i-j) <= ceil(tamano/2))
matrix[i][j]=4;

if(i==ceil(tamano/2))
matrix[i][j]=5;
if(j==ceil(tamano/2))
matrix[i][j]=5;
}
}

for(i=0; i for(j=0; j if(matrix[i][j]==0)
cout<<" ";
else
cout< }
cout< }

cin.get();
cin.get();
return 0;
}

FUENTES CONSULTADAS

http://codigomaldito.blogspot.com/2005/11/arreglos-o-arrays-en-c.html
http://ronnyml.wordpress.com/2009/07/04/vectores-matrices-y-punteros-en-c/
http://www.kernelpanic.org.ve/site/2009/12/03/programa-de-matrices-en-c/

Publicado por JOSE ALBERTO PARRA PEÑA

1 comentario:

  1. Buenas tardes, le informo que en estos momentos he colgado mi exposición sobre arreglos, vectores y matrices.

    ResponderEliminar