Allora, do il valore ad r ed s:
void get_submatrix(float**mat, int num_rows, int row, int col, float**res){
int r,s;
r=0;
for( int i =0; i <num_rows; i++){
s=0;
for( int j =0; j <num_rows; j++){
res[ r ] [ s ]= mat [ i ] [ j ];
}
}
}
E penso sia corretto farlo nella riga prima di ogni determinato ciclo for, giusto
Da quello che mi hai fatto notare, ci devono essere delle condizioni da rispettare, dal momento che una matrice mat è più grande della matrice res!
Imporre delle condizioni significa usare if, else ecc.
Ed in effetti, i cicli for, scansionano la matrice di partenza che è più grande
Ed in effetti, la traccia dice:
La funzione ....., deve riempire la matrice res(che è con una riga e una colonna mancante) con tutti gli elementi presenti nella matrice mat(che è con una riga e una colonna in più rispetto a res), tranne gli elementi che si trovano nella riga row o colonna col.
Ma quando dice
nella riga row o colonna col, siccome dobbiamo restare in tema di matrice quadrata, è ovvio che la dimensione
num_rows-1 ci impone che o eliminando una riga o una colonna, dovremo comunque restare in tema con una matrice sempre quadrata ma di dimensione più piccola!
Puoi darmi qualche altro indizio per favore
EDIT: Ma quando dice tranne gli elementi che si trovano nella riga row o colonna col, ci si può riferire alla riga numero 1 e alla colonna numero 1
invece di come hai detto tu:
1 2 3
4 5 6
7 8 9
non potremmo eleiminare prima riga e prima colonna e farla diventare così:
5 6
8 9