You are on page 1of 16

PROGRAMACIN DE

COMPUTADORES
IV SEMESTRE
Clase No. 7
Ing. Jonathan Avendao Prez
Arreglos en C++

DATO 1 DATO 2 DATO 3 DATO 4 DATO 5 DATO 6 DATO 7 DATO 8


0 1 2 3 4 5 6 7
Arreglos en C++
Los arreglos se caracterizan por:

Almacenar datos en posiciones contiguas de memoria.

Asignar un mismo nombre de variable que representa a todos los


elementos dentro del arreglo. Para hacer referencia a esos
elementos es necesario utilizar un ndice que especifica el lugar
que ocupa cada elemento dentro del arreglo.
Vectores en C++

DATO 1 DATO 2 DATO 3 DATO 4 DATO 5 DATO 6 DATO 7 DATO 8


0 1 2 3 4 5 6 7
Sintaxis Vectores en C++
Un vector en C++, puede definirse de la siguiente
manera:

Tipo_de_dato Nombre [Tamao]

En donde Tipo_de_dato es el tipo de dato que el vector


almacena, por ejemplo: int, float, char, double, etc.
Nombre es el nombre con el que se etiqueta el vector, y
Tamao es la longitud del vector y debe ser un nmero
entero.
Sintaxis Vectores en C++ (Ejemplos)
int vector_1[10]; Arreglo de 10 nmeros enteros
llamado vector_1.

float vector_2[100]; Arreglo de 100 nmeros reales


(float) llamado vector_2.

char vector_3[255]; Arreglo (cadena) de 255


caracteres llamado vector_3.

double vector_4[25500]; Arreglo de 25500 datos de


doble precisin llamado
vector_4.
Matrices en C++

Columnas

DATO 1 DATO 2 DATO 3


Filas DATO 4 DATO 5 DATO 6
DATO 7 DATO 8 DATO 9
Sintaxis Matrices en C++
Una matriz en C++, puede definirse de la siguiente manera:

Tipo_de_dato Nombre [filas] [columnas]

En donde Tipo_de_dato es el tipo de dato que la matriz almacena,


por ejemplo: int, float, char, double, etc. Nombre es el nombre
con el que se etiqueta la matriz, y filas es el nmero de filas y
columnas es el numero de columnas de la matriz.
Sintaxis Matrices en C++ (Ejemplos)
int matriz_1[10][10] Arreglo de 100 nmeros enteros
llamado matriz_1. matriz_1 tiene
10 filas y 10 columnas, cada dato
almacenado es de tipo entero.
float matriz_2[5][3] Arreglo de 15 nmeros reales
llamado matriz_2. matriz_2 tiene
5 filas y 3 columnas, cada dato
almacenado es de tipo float.
char matriz_3[2][5] Arreglo de 10 caracteres llamado
matriz_3. matriz_3 tiene 2 filas y
5 columnas.

double matriz_4[20][100] Arreglo de 2000 nmeros reales


llamado matriz_4. matriz_4 tiene
20 filas y 100 columnas, cada dato
almacenado es de tipo double.
Asignacin de valores de Matrices y Vectores en C++
(Ejemplos)

Forma correcta de asignacin de datos a un vector y una matriz


respectivamente.

int vector_1[10] = {1,2,3,4,5,6,7,8,9,10};


int matriz_1[2][2] = {1,2,3,4};

Forma incorrecta de asignacin de datos a un vector y una matriz


respectivamente.

int vector_1[10] = 1,2,3,4,5,6,7,8,9,10;


int matriz_1[2][2] = 1,2,3,4;
int matriz_1[2][2] = {1,2;3,4};
Ejemplo 1

Realice un script que solicite ingresar por pantalla los 9


elementos de un vector tipo int y luego lo muestre por pantalla.
Script 1
#include <iostream>

using namespace std;

int main(){
//Declarar Variables
int i, vector[9];
for(i = 0; i<9;i++){
cout<<"Por favor ingrese el valor del dato numero "<<i<<endl;
cin>>vector[i];
}
cout<<endl;
cout<<"El vector ingresado es: "<<endl;
//Mostrar el vector por pantalla
for(i = 0; i<9;i++){
cout<<vector[i]<<" ";
}
cout<<endl;
system("pause");
}
Ejemplo 2

Realice un script que solicite ingresar por pantalla el numero de


filas y columnas de una matriz, luego debe solicitar ingresar cada
elemento de la matriz que deben ser de tipo float y por ultimo
mostrarla por pantalla.
Script 2
#include <iostream>

using namespace std;

int main(){
//Declarar Variables iniciales
int i,j, f, c;

cout<<"Por favor ingrese el numero de filas "<<endl;


cin>>f;
cout<<"Por favor ingrese el numero de columnas "<<endl;
cin>>c;

//Se declara la matriz


float matriz[f][c];

for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
cout<<"Por favor ingrese el valor del dato "<<i<<" "<<j<<endl;
cin>>matriz[j][i];
}
}
cout<<endl;
cout<<"La matriz ingresada es: "<<endl;
cout<<endl;
//Mostrar matriz por pantalla
for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
cout<<matriz[j][i]<<" ";
}
cout<<endl;
}
cout<<endl;
system(pause);

}
Ejemplo 3
Realice un script que solicite ingresar por pantalla el numero de
filas y columnas de dos matrices, luego debe solicitar ingresar
cada elemento de cada matriz para luego calcular la suma entre las
dos matrices y mostrar el resultado por pantalla. Los datos de
ambas matrices debe ser de tipo float. Las matrices deben ser del
mismo tamao.
Ejemplo:
Script 3
#include <iostream>

using namespace std;

int main(){
//Declarar Variables iniciales
int i,j, f, c;

cout<<"Por favor ingrese el numero de filas "<<endl;


cin>>f;
cout<<"Por favor ingrese el numero de columnas "<<endl;
cin>>c;

//Se declaran las matrices


float matrizA[f][c];
float matrizB[f][c];
float matrizC[f][c];

//Se ingresa la matriz A


for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
cout<<"Por favor ingrese el valor del dato "<<i<<" "<<j<<endl;
cin>>matrizA[j][i];
}
}
cout<<endl;
//Se ingresa la matriz B
for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
cout<<"Por favor ingrese el valor del dato "<<i<<" "<<j<<endl;
cin>>matrizB[j][i];
}
}
cout<<endl;

//Se calcula la suma de A y B


for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
matrizC[j][i] = matrizA[j][i] + matrizB[j][i];
}
}
cout<<endl;

cout<<"La suma de la matriz A y B es: "<<endl;


cout<<endl;
//Mostrar la suma de A + B por pantalla
for(j = 0; j<f;j++){
for(i = 0; i<c;i++){
cout<<matrizC[j][i]<<" ";
}
cout<<endl;
}
cout<<endl;
system("pause");
}