#include <iostream>
using namespace std;
void leerMatriz (int f, int c, int**&matriz);
void escribirMatriz (int f, int c, int**matriz);
void calc(int f, int c, int**matriz1, int**matriz2, int**&matrizR);
int main ()
{
int f,c,i;
cout<<"Ingrese el numero de filas:";cin>>f;
cout<<"Ingrese el numero de columnas:";cin>>c;
int matriz1[f][c], matriz2[f][c], matriz3[f][c];
int *p1[f]; //Variable con puntero asignacion
int *p2[f];
int *p3[f];
//Cada elemento del arreglo de punteros debe apuntar a cada fila de la matriz
for (i=0; i<f;i++)
{
p1[i]=matriz1[i]; // p1[0]=matriz1[0] p1[1]=matriz1[1] p1[2]=matriz1[2]
p2[i]=matriz2[i]; // p2[0]=matriz2[0] p2[1]=matriz2[1] p2[2]=matriz2[2]
p3[i]=matriz3[i]; // p3[0]=matriz3[0] p3[1]=matriz3[1] p3[2]=matriz3[2]
}
//Creación un puntero a puntero
int **o,**p, **q; //? Moverse por las posiciones de la matriz
o=p1;p=p2;q=p3;
leerMatriz(f,c,o);
leerMatriz(f,c,p);
escribirMatriz(f,c,o);
escribirMatriz(f,c,p);
calc(f,c,o,p,q);
escribirMatriz(f,c,q);
}
void leerMatriz (int f, int c, int**&matriz) //?
{
int i,j;
cout<<endl<<"Ingresar los elementos de la Matriz:"<<endl;
for(i=0; i<f; i++)
{
for(j=0; j<c; j++)
{
cout<<"Ingrese el elemento ["<<i<<";"<<j<<"]:";
cin>>matriz[i][j];
}
}
}
void escribirMatriz (int f, int c, int**matriz)
{
int i,j;
for (i=0 ; i<f; i++)
{
for(j=0; j<c; j++)
cout<<matriz[i][j]<<" ";
cout<<endl;
}
}
void calc(int f, int c, int**matriz1, int**matriz2, int**&matrizR)
{
int i,j;
cout<<endl<<"Elementos de la Matriz C:"<<endl;
for(i=0; i<f; i++)
{
for(j=0; j<c; j++)
{
matrizR[i][j]=matriz1[i][j]+matriz2[i][j];
}
}
}
0 Comentarios