Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Guía 14 - Vectores
Guía 14 - Vectores
LABORATORIO Nro. 14
SIS 1110 METODOLOGÍA DE LA PROGRAMACIÓN I
1. LOGROS A ALCANZAR
2. FUNDAMENTO TEORICO
Un Array es una estructura de datos en la que se almacena una colección de datos del mismo tipo. Dicho de otro
modo, un array es una lista de un número finito n de elementos del mismo tipo que se caracteriza por almacenar los
elementos del array en posiciones de memoria continua, tener un único nombre de variable y tener acceso directo
o aleatorio a los elementos.
Un array de una dimensión vector o lista es un tipo de datos estructurado compuesto de un número de elementos
finitos, tamaño fijo y elementos homogéneos. La representación de un arreglo unidimensional o vector tiene la
siguiente representación.
23 1
888 2
456 3
Datos Números Enteros
678 4
3 5
Sub Indice del Vector
23 6
823 7
73 8
45 9
Alumno:………………………… Página 1
Para almacenar datos se hace referencia al nombre del vector x de la siguiente manera:
x [0] = 55;
x [5] = 23;
x [7] = 55 + 23
x [7] = 78
int x [10]
55 0
23 1
456 3
Sub Indice del Vector
678 4
23 5
23 6
78 7
73 8
45 9
Como podemos ver, es similar a declarar una variable convencional, solo que se coloca entre corchetes el
número de posiciones del arreglo, por lo que todas las posiciones serán del mismo tipo.
Índice de un arreglo.- Todo arreglo está compuesto por un número de elementos. El índice es un número
correlativo que indica la posición de un elemento del arreglo. Los índices en C++ van desde la posición 0 hasta
la posición (tamaño – 1).
Elemento de un arreglo.- Un elemento de un arreglo es un valor particular dentro de la estructura del arreglo.
Para acceder a un elemento del arreglo es necesario indicar la posición o índice dentro del arreglo. Ejemplo:
Alumno:………………………… Página 2
•arreglo[0] //Primer elemento del arreglo
•arreglo[3] //Cuarto elemento del arreglo
Para manejar un arreglo, las operaciones a efectuarse son: Declaración del arreglo, Inicialización de los
elementos del arreglo, y Acceso a los elementos del arreglo.
#include <iostream>
int main ()
{
int x[10], i;
for ( i = 0; i < 10 ; i++)
{
cin >> x[i];
}
return 0;
}
#include <iostream>
int main ()
{
int x[10], i;
for ( i = 0; i < 10 ; i++)
{
cout << x[i] << endl;
}
return 0;
}
Alumno:………………………… Página 3
GENERACIÓN DE NÚMEROS ALEATORIOS
Para manejar una gran cantidad de números en programas de prueba o simulados, es mejor generar los datos
que introducirlos manualmente, debido a su gran diferencia en velocidad.
Función rand().- Permite generar un valor pseudoaleatorio comprendido entre 0 y el máximo entero positivo.
Para generar un número aleatorio comprendido en 0 y n incluyendo a ambos, debe utilizarse la siguiente
sentencia: a=rand()%(n+1).
La función rand() se encuentra en una librería externa denominada <cstdlib>, la cual debe incluirse en el
encabezado.
Si se generan varios números aleatorios, la secuencia generada es siempre la misma. Para generar secuencias
diferentes deberá inicializarse un valor denominado semilla con la función srand() de la siguiente manera:
srand(time(NULL))
#include<iostream>
#include<cstdlib>
#include<ctime> //para poder utilizar la función time()
int main()
{
int a[20];
srand(time(NULL)); //inicializa la semilla de números pseudoaleatorios
for(int i=0; i<20;i++)
a[i]=rand()%100;
for(int i=0; i<20;i++)
cout<< a[i]<<”,”;
return 0;
}
A + rand()%(B-A+1);
Alumno:………………………… Página 4
3. ACTIVIDAD DE CLASE
int main()
{
int num, i;
float x, calif[100], sum;
cout<<"¿Cuántas calificaciones ?: ";
cin>>num;
sum=0;
//generacion de datos
srand(time(NULL));
for (i=0; i<num; i++)
{
calif[i]= rand()%101
sum=sum+calif[i];
}
cout<<"El promedio es: ",sum/num;
cout<<"\n Los datos generados fueron: \n";
for (i=0;i<num;i++)
{
cout<< i+1<<”\t”<<calif[i]<<endl;
}
return 0;
}
int main()
{
srand(time(NULL))
int i,a1[10], a2[10];
//Inicialización de a1
for (i=0; i<10;i++)
a1[i]=rand()%100;
//Copiar en a2
for (i=0; i<10;i++)
a2[i]=a1[i]
//Mostrar a2
for (i=0; i<10;i++)
cout<<a2[i]<<endl;
return 0;
}
Alumno:………………………… Página 5
Ejemplo 3: Programa que pide n números, cada uno lo multiplica por 5 y el resultado lo guarda en otro arreglo
int main()
{
float ar1[20], ar2[20];
int cont, n;
cout<<“Dame un número entre 2 y 20: ”;
cin>>n;
cout<<“A continuación se pedirán “<<n<<” números”;
for(cont=0; cont<n; cont ++)
{
cout<(“Dame el valor del número: ”<<cont ;
cin>>ar1[cont];
ar2[cont]=ar1[cont]*5;
}
cout<<“Tras multiplicar cada número por cinco se tiene: ”<<endl;
for(cont=0; cont<n; cont ++)
{
cout<<”Numero “<<cont<<” es:”<<ar2[cont];
}
return 0 ;
}
4. TAREA
5. CUESTIONARIO
Alumno:………………………… Página 6