Kod: Zaznacz cały
#include<iostream>
#include<cstdlib>
#include<math.h>
#include<conio.h>
using namespace std;
class macierz
{ public:
int k, w;
double **tab;
macierz();
macierz(int kolumny, int wiersze)
{
k=kolumny;
w=wiersze;
}
void wprowadz();
void wypisz();
};
macierz::macierz()
{
k=w=0;
}
void macierz::wprowadz()
{
double tmp;
cout<<"Podaj liczbe kolumn:" ; cin>>k;
cout<<"Podaj liczbe wierszy:" ; cin>>w;
double **tab = new double *[w]; //alokacja pamieci
for ( int i = 0; i < w; ++i )
{
tab[i] = new double [k]; //alokacja pamieci
for ( int j = 0; j < k; ++j) //wpisanie wartosci do tablicy
{
cout<<"Podaj wartosc A" <<i+1<<j+1<<endl;
cin>>tmp;
tab[i][j]=tmp;
}
}
};
void macierz::wypisz()
{
for ( int i = 0; i < w; ++i)
{
cout<<endl;
for ( int j = 0; j < k; ++j)
cout<<tab[i][j];
}
};
int main()
{
char znak;
cin>>znak;
switch(znak)
{
case '1':
{
macierz m1;
m1.wprowadz();
m1.wypisz();
}
break;
}
};
Oto fragment programu o macierzach. Problem jest taki, że metoda wypisz nie wypisuje poprawnie wprowadzonej macierzy. Po prostu progam się zawiesza. W czym jest problem.? Najlpeiej będzie go skompilować, wtedy będzie ładnnie wdać o co mi chodzi.