#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream>

using namespace std;
double** Matrice(int r,int c);/*funzione che crea dinamicamente una matrice di r righe e c colonne*/
void leggimat(int r, int c, double** M );

double Prodotto(double, double, int, int, int);
main()
{int i,k,n,j,h,y; double x;

cout<<"\n dammi il numero reale x = ";
cin>> x;
cout<<"\n dammi il numero dei componenti del vettore k = ";
cin>> k;
if (k>40) return 0;
double** L; /* variabile puntatore */
double** M; /* variabile puntatore */
double** N; /* variabile puntatore */
M = Matrice(k,k);
L = Matrice(k,k);
leggimat(k,k,M);
leggimat(k,k,L);

N = Matrice(k,k);

for(i=1; i<=k ;i++)
{
for(j=1; j<=k ;j++)
{
N[i][j]=0;
for(h=1; h<=k ;h++)
{
N[i][j]+=M[i][h]*L[h][k];
}
}
}





cout<<"\n Matrice N = ";

for(i=0; i<k ;i++)
{
for(j=0; j<k ;j++)
{
cout << "\n l'elemento di riga "<< i << " e di colonna " << j << ": "<< N[i][j];
N[i][j];
}
}






system("\n PAUSE");return 0;

}



double** Matrice(int r, int c )
{
double** m;
int i,j;
m=new double* [r];
/* ora posso creare le righe */
for (i=0;i<r;i++)
m[i] = new double[c];
return m;
}
void leggimat(int r, int c, double** M )
{
int i,j;
for ( i = 0; i <r; i++)
for (j = 0; j <c; j++){
cout << "\n Inserire l'elemento di riga "<< i
<< " e di colonna " << j << ": ";
cin >> M[i][j];
}
}