Scrivere un programma che restituisce una matrice quadrata di n righe e colonne tali che ogni elemento della matrice sia dato dalla differenza del fattoriale dell'indice colonna e dell'indice riga.
ho un errore che non mi fa funzione il programma in modo corretto, dicendomi le seguenti parole:
invalid operands of types 'void' and 'void' to binary 'operator-'
nella riga in cui determino la matrice diff[n][n]. posto il codice.
#include <iostream>
#include <iomanip>
using namespace std;
void fatt(int n){ //definisco la funzione fattoriale//
for(int i=n;i<=n;i--)
{
int fatt=0;
fatt=fatt*i;
cout<<fatt;
}
}
int main()
{
int n; //inserisco dimensione matrice//
cout<< "INSERIRE DIMENSIONE"<<endl;
cin>>n;
int diff[n][n]; //introduco la matrice che ha per termini la differenza dei fattoriali//
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
{
diff[i][j]= fatt(i)-fatt(j); //singoli termini della matrice (qui mi da errore)//
}
}
for (int i=0; i<n; i++) //funzione per stampare matrice//
{
cout<<endl;
for (int j=0; j<n; j++)
{
cout<<diff[i][j];
}
cout<<endl;;
}
}