Oppure

Loading
Questo topic e' stato chiuso dal moderatore.
11/10/11 13:14
t.kelly
Buona sera, sto studiando l'allocazione dinamica per le matrici in c++, ho scritto un pezzo di codice che scrive all'interno di una matrice e poi legge, ma non riesco a capire dove sbaglio perchè appena inserisco un elemento il programma si blocca. Posto il codice e spero che ci sia qualcuno che sappia aiutarmi.

#ifndef MATRICE_H
#define MATRICE_H

typedef double tipoelem;

class matrice {
public:
matrice();
matrice(int, int); /* costruttore */
tipoelem leggimatrice(int, int);
void scrivimatrice(int, int, tipoelem);
private:
int righe;
int colonne;
tipoelem **elementi;
};
#endif

#include <iostream>
#include "matrice.h"

using namespace std;

matrice::matrice()
{
righe = colonne = 0;
}
// costruttore
matrice::matrice(int c, int r){
colonne = c;
righe = r;
// allocazione dinamica della matrice
int i,j;
elementi = new tipoelem* [righe];
for (i=0; i < righe; i++)
elementi[i] = new tipoelem[colonne];
// inizializzazione degli elementi
for (i=0; i < righe; i++)
for(j=0; j < colonne; j++)
elementi[i][j] = 0; cout << elementi[i][j] << ' ';

}

tipoelem matrice::leggimatrice(int i, int j)
{
return elementi[i][j];
}
void matrice::scrivimatrice(int i, int j, tipoelem e)
{
elementi[i][j] = e;
}

#include <iostream>
#include "matrice.h"

using namespace std;

int main()
{
matrice m;
int nrighe,ncolonne = 0;
int v,z;
tipoelem elem;

cout << "Inserisci numero righe:\n";
cin >> nrighe;
cout << "Inserisci numero colonne:\n";
cin >> ncolonne;

cout << "Scrivi matrice:\n";
for(v=0; v < nrighe; v++)
for(z=0; z < ncolonne; z++)
{cin >> elem;
m.scrivimatrice(v,z,elem); }


cout << "La matrice inserita e':\n";
for(v=0; v < nrighe; v++)
for(z=0; z < ncolonne; z++)
cout << m.leggimatrice(v,z) << ' ';

system("PAUSE";);
return 0;
}
aaa
11/10/11 13:29
HeDo
Questo topic è in violazione di una o più norme del regolamento: pierotofy.it/pages/extras/forum/9/3839-regolamento/ .
    
Dopo averlo letto riapri un nuovo topic assicurandoti di aver rispettato le regole. Grazie per la tua pazienza.
aaa