Professional Documents
Culture Documents
Electricidad Grupo 2
bgonzalezc1@est.ups.edu.ec
OBJETIVOS:
Definir que es un arreglo y cómo utilizarlo en el lenguaje BC++.
Desarrolle métodos para crear, inicializar y asignar valores a los elementos de un arreglo.
Determine la forma de cómo debe tener acceso a los elementos de un arreglo, ya sea para
asignarle valores a sus elementos o para leer los datos almacenados en ellos.
Conocer más sobre arreglos Unidimensionales y Bidimensionales.
Aprender más sobre la materia.
INTRODUCCIÓN:
En el presente trabajo de investigación se dará a conocer más sobre los arreglos, principalmente sobre
los Unidimensionales y Bidimensionales, tratando de comprender mejor sus usos y emplearlos en la
materia.
DESARROLLO:
¿Qué es un Arreglo?
Definición de arreglo
(Array en inglés)
Un arreglo es un conjunto de variables del mismo tipo de datos que pueden ser referenciadas a
través de un mismo nombre. La forma de identificar a un elemento determinado es a través de un
índice.
Al definir más de una dimensión al arreglo, le permite aplicar diversos métodos de clasificación
para el almacenamiento de listas de datos más complejos.
Podríamos agrupar en un array una serie de elementos de tipo enteros, flotantes, caracteres, objetos,
etc.
Ejm:
Como hay 5 elementos en cada array, automáticamente se le asignará 5 espacios de memoria a cada
vector, pero si trato de crear el vector de la forma int a[] , el compilador mostrará un error, porque no
indiqué el tamaño del vector ni tampoco inicializé sus elementos.
Obviamente el método setPrecio() debe de estar implementado. Para llenar, recorrer e imprimir un
vector podemos utilizar un bucle for:
1 #include <iostream>
2 using namespace std;
3
4 int main()
5 {
6 int dim;
7 cout << "Ingresa la dimension del vector" << endl;
8 cin >> dim; // Supongamos que ingrese 10
9 int vector[dim]; // mi vector es de tamanyo 10
10
11 for(int i = 0; i < dim; i++){
12 vector[i] = i * 10;
13 cout << vector[i] << endl;
14 }
15
16 return 0;
17 }
Aquí una función simple para sumar 2 vectores a y b y poner el resultado en un tercer vector c:
1 #include <iostream>
2 using namespace std;
3
4 void sumar(int a[], int b[], int c[],int dim) {
5 for (int i = 0; i < dim; i++) {
6 c[i] = a[i] + b[i];
7 }
8 }
9
10 void imprimir(int v[], int dim)
11 {
12 for(int i = 0; i < dim; i++) {
13 cout << v[i] << endl;
14 }
15 cout << endl << endl;
16 }
17
18 int main()
19 {
20 int dim;
21 cout << "Ingresa la dimensión" << endl;
22 cin >> dim;
23
24 int a[dim];
25 int b[dim];
26 int c[dim];
27
28 for(int i = 0; i < dim; i++) {
29 a[i] = i * 10;
30 b[i] = i * 5;
31 }
32
33 cout << "Vector A " << endl;
34 imprimir(a, dim);
35
36 cout << "Vector B " << endl;
37 imprimir(b, dim);
38
39 sumar(a, b, c, dim);
40 cout << "Vector C " << endl;
41 imprimir(c, dim);
42 return 0;
43 }
Si ingreso una dimensión de 10, este programa me daría:
Vector A
0 10 20 30 40 50 60 70 80 90
VECTOR B
0 5 10 15 20 25 30 35 40 45
VECTOR C
int matrix[rows][cols];
int es el tipo de dato, matrix es el nombre del todo el conjunto de datos y debo de especificar el número
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 definición lo indica, un vector de vectores, es decir, los vectores están uno detrás del
Declaración
int arreglo[10][10];
float matriz[10][10];
también podemos utilizar constantes para definir la dimensión del arreglo de dos dimensiones:
int arreglo[N][N];
Inicialización
0 1 2
0 1 2 3
1 4 5 6
2 7 8 9
Fig1
También podemos utilizar una estructura for dentro de otra estructura for para inicializar los valores
de un arreglo de dos dimensiones como se muestra a continuación:
Ejemplo
#include <iostream.h>
void main()
int matriz[TAM][TAM];
cin>>matriz[I][j];
}
Acceso a los elementos de un arreglo bidimensional
En un arreglo de dos dimensiones necesitamos también dos índices para acceder a sus elementos.
Para acceder al elemento de la segunda fila y segunda columna de la matriz de la Fig. 1 hacemos:
Las matrices o arreglos bidimensionales se suelen utilizar en cálculos matemáticos, operaciones con
matrices, recorridos por matrices, y cualquier uso que nosotros le podamos dar.
CONCLUSION:
Un arreglo o array (en inglés) es una colección de variables relacionadas a las que se hace referencia
por medio de un nombre común. Otra definición válida es que un arreglo es un conjunto de datos que se
almacenan en memoria de manera contigua con el mismo nombre y para diferenciar los elementos de
un arreglo se utiliza un índice. En el lenguaje C++ un arreglo se le conoce como un tipo de dato
compuesto. Los arreglos pueden tener una o varias dimensiones.
Un arreglo unidimensional es un tipo de datos estructurado que está formado de una colección finita y
ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. El
tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a
cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto
mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa. Para
implementar arreglos unidimensionales se debe reservar espacio en memoria.
Los arreglos bidimensionales Son estructuras de datos que agrupan muchos datos del mismo tipo, en
donde cada elemento se puede trabajar individualmente y se puede referenciar con un mismo
nombre. Un arreglo bidimensional equivale a una tabla con múltiples filas y múltiples columnas.
REFERENCIAS:
• http://www.udb.edu.sv/udb/archivo/guia/informatica-tecnologico/introduccion-a-la-
programacion/2012/ii/guia-7.pdf
• https://ronnyml.wordpress.com/2009/07/04/vectores-matrices-y-punteros-en-c/
• http://www.omijal.org/pagina_c/matrix.html
• https://aldeafraypedrodeagreda.files.wordpress.com/2009/12/11-arreglos-
multidimensionales.pdf
• http://www.cs.buap.mx/~mtovar/doc/Matrices.pdf
• http://programacionunefa.blogspot.com/2008/06/arreglos-unidimensionales.html