Informe Matriz
Informe Matriz
Informe Matriz
Fundamentos de Programacin
Nombre: Henry Aguaiza, Jos Cruz
Jos Pillajo, Jorge reyes
Fecha:
25 de Enero del 2015
NRC: 1003
TEMA: Arreglos bidimensionales
OBJETIVOS
General
o Comprender el funcionamiento de un arreglo bidimensional.
Especifico
o Elaborar un programa que permita multiplicar una matriz por un escalar.
o Elaborar un programa que permita realizar la triangulacin de una matriz.
o Elaborar un programa que permita resolver el determinante de la misma.
MARCO TERICO
MATRICES
Una matriz es un vector de vectores o un tambin llamado array bidimensional. La
manera de declarar una matriz es C++ es similar a un vector:
int es el tipo de dato, matriz es el nombre del todo el conjunto de datos y debo de
especificar el nmero de filas y columnas.
-
Las matrices tambin 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.
Las reglas que controlan el nmero de constantes cuando no coincide con el tamao de
la matriz, son las mismas que para un arreglo, as:
-
Lectura de matrices
Para la lectura de una matriz es til saber las siguiente estructuira de programacin.
for (int IndiceFila = 0; IndiceFila < NumFilas; IndiceFila ++){
for (int IndiceCol = 0; IndiceCol < NumCol; IndiceCol++)
Procesar elemento[IndiceFila] [IndiceCol]
}
Ejemplo:
for(i=0;i<fila;i++){
for(j=0;j<columna;j++){
printf("\n[%d %d]\n",i,j);
scanf("%d",&A[i][j]);
}
}
Escritura de matrices
Para escribir datos en un matriz se lo hace digito por digito de izquierda a derecha que es
lo ms comn, o sino de arriba as abajo, depende del programador.
A continuacin se muestra la manera en cmo se debe realizar la declaracin para ingresar
datos en nuestra matriz. Vamos a ir avanzando de izquierda a derecha e incrementando
de a poco la columna.
programa();
return 0;
}
void programa(){
int opcion,n,m, signodet;
float A[fila][columna], B[fila][columna],escalar, det;
printf("
UNIVERSIDAD DE LAS FUERZAS ARMADAS ESPE\n");
printf("
TALLER ARREGLOS BIDIMENSIONALES\n");
printf(" INTEGRANTES:\n\t\t\t-AGUAIZA HENRY\n\t\t\t-CRUZ JOSE\n\t\t\tPILLAJO JOSE\n\t\t\t-REYES JORGE");
printf("\n\n1.-Multiplicacion de una matriz por un escalar nxn \n");
printf("2.-Triangulacion de una matriz nxn \n");
printf("3.-Determinante de una matriz nxn");
printf("\n QUE EJERCICIO DESEA REALIZAR: ");
scanf("%d",&opcion);
switch(opcion){
case 1:
system("cls");
leerMatriz(n,m,A);
printf("\n\n");
imprimirMatriz(n,m,A);
printf("\n\nIngrese el escalar por el que se multiplicara la matriz\n");
scanf("%f",&escalar);
multiplicacion(n,m,A,escalar);/*llamas a la funcion multipicacion que conentra
otra funcion para poder efectuarse correcatmente*/
printf("\n\n");
imprimirMatriz(n,m,A);
break;
case 2:
system("cls");
leerMatriz(n,m,A);
printf("\n\n");
imprimirMatriz(n,m,A);
printf("\n la matriz triangulada es:\n");e
triangulacion(n,m,A,signodet,det);/*funcion triangulacr una matriz"*/
printf("\n\n");
imprimirMatriz(n,m,A);
break;
case 3:
system("cls");
leerMatriz(n,m,A);
printf("\n\n");
imprimirMatriz(n,m,A);
triangulacion(n,m,A,signodet,det);
if(m==n){
det=det*signoDet;
}else{
det=0;
}
return det;
}
void leerMatriz(int &n, int &m, float matriz[][50]){
do{
printf("\nIngrese las dimensiones de la matriz\nNumero de filas:\n");
scanf("%d",&n);
printf("\nIngrese las dimensiones de la matriz\nNumero de columnas:\n");
scanf("%d",&m);
}while(n< 1 || n>50 || m< 1 || m>50);
for(int i=0; i<n; i++){
for(int j=0; j<m; j++){
printf("\nIngrese el elemento fila %d, columna %d\n",i,j);
scanf("%f",&matriz[i][j]);
}
}
}
void imprimirMatriz(int n, int m, float matriz[][50]){
for(int i=0; i<n; i++){
for(int j=0; j<m; j++){
printf("\t%.2f",matriz[i][j]);
}
printf("\n");
}
}
CONCLUSIONES
Se logr realizar cada uno de los ejercicios.
Se debe tener en cuenta los tipos de datos que se use en cada matriz.
Se ah entendido de manera correcta el uso de una arreglo bi dimensional.