Salve a tutti, sono nuovo in questo forum ed ho bisogno di un aiuto da parte vostra riguardo un esercizio con gli array bidimensionali ( matrici ), di seguito vi allego il testo dell'esercizio:
Creare una matrice (mrighe*ncolonne) costituita da valori casuali compresi tra 1 e 10.
1. Visualizzare matrice.
2. Determinare e visualizzare la somma degli elementi della matrice.
3. Visualizzare la prima riga della matrice.
4. Visualizzare un elemento la cui posizione viene richiesta all'utente.
Il mio problema è che, una volta creata la matrice ed impostato rand e srand(per evitare che si ripetano i numeri pseudo-casuali del primo caricamento) e una volta finito e avviato il programma, i numeri della prima riga della matrice sono casuali, ma poi, quelli delle righe successive sono uguali a quelli della propria colonna.
Ecco il mio format su DevC++( ovviamente solo il tratto di programma sul quale ho il problema):
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
int main(int argc, char** argv) {
int m,n,somma=0,posrig,poscol;
int a[m][n];
srand(time(NULL));
cout<<"Inserisci il numero di righe"<<endl;
cin>>m;
cout<<"Inserisci il numero di colonne"<<endl;
cin>>n;
for(int i=0; i<m; i++){
for(int j=0; j<n; j++){
a[i][j]=rand()%10+1;
}
}
cout<<"L'intera tavola a numeri casuali e': "<<endl;
cout<<endl;
for(int i=0; i<m; i++){
for(int j=0; j<n; j++){
cout<<a[i][j]<<"\t";
}
cout<<endl;
}
Vi allego anche lo screen del programma a video così magari capite meglio il mio problema
Allegati: