//example de matrices parcurrues avec des pointeurs #include #include using namespace std; //declaration des fonctions pour manipuler les matrices void sommeMatrices(double *matA, double *matB, double *matC, int m, int n); void imprimeMatrice(double *mat, int m, int n); int main() { //declaration de deux matrices carrees et //de deux pointeurs sur cettes matrices double matA[3][4] = {0.}; double *ptrA = &matA[0][0]; double matB[3][4] = {0.}; double *ptrB = &matB[0][0]; double matC[3][4] = {0.}; //remplissage des matrices for (int i=0; i<12; i++) { *ptrA = 1.*i; ptrA++; *ptrB = 5.*i; ptrB++; } //affichage des matrices cout << "premiere matrice" << endl; imprimeMatrice(&matA[0][0],3,4); cout << "deuxieme matrice" << endl; imprimeMatrice(&matB[0][0],3,4); //addition des matrices sommeMatrices(&matA[0][0],&matB[0][0],&matC[0][0],3,4); //affichage de la matrice somme cout << "somme des matrices" << endl; imprimeMatrice(&matC[0][0],3,4); return 0; } //la matrice a imprimer est passee par pointeur void imprimeMatrice(double *mat, int m, int n) { cout << setw(5) << "/" << setw(n*10+5) << "\\" << endl; for (int i=0; i