Edit. N to stała symboliczna, zdefiniowana przed wszystkimi funkcjami. Spróbowałem zmodyfikować nagłówek funkcji na Losuj(int **A, int rozmiar1, int rozmiar2) i odpowiednio ją zmodyfikować, jednak to nie pomaga.
Witam,
poniższy fragment funkcji dla przypadku po wprowadzeniu znaku '6' powinien zaalokować dynamicznie tablicę dwuwymiarową tab[rozmiar1][rozmiar2]. Następnie powinien wypełnić ją wartościami losowymi wskazanymi przez użytkownika (od p do k) i wyświetlić. Problem jest z tym, że nie mogę przejść do kompilacji programu - wyskakuje mi okno "It seems that this file has not been built yet". Bez poniższego fragmentu kodu program działa.
case '6':
cout << "Podaj ilosc wierszy: ";
cin >> rozmiar1;
cout << "Podaj ilosc kolumn: ";
cin >> rozmiar2;
int **tab = new int*[rozmiar1];
for(int i = 0; i < rozmiar1; i++)
tab[i] = new int[rozmiar2];
do
{
cout << "Podaj najmniejsza wartosc w tablicy do wylosowania: ";
cin >> p;
cout << "Podaj najwieksza wartosc w tablicy do wylosowania: ";
cin >> k;
if(p > k) cout << "Blad - wartosc najmniejsza wieksza od najwiekszej! Wprowadz wartosci ponownie." << endl;
}while(p > k);
Losuj(**tab, p, k);
cout << "Tablica zaalokowana dynamicznie ma postac: " << endl;
Wypisz(**tab);
for(int i = 0; i < rozmiar1; i++)
delete [] tab[i];
delete [] tab;
cin.ignore();
cout << "Wcisnij ENTER, aby przejsc dalej.";
getchar();
break;
Funkcja Losuj() ma postać:
void Losuj(int A[N][N], int p, int k)
{
for(int i = 0; i < N; i++)
for(int j = 0; j < N; j++)
A[i][j] = rand()%(k-p+1)+p;
}
ktoś wie, w czym może leżeć problem?