problem z tablicami
Ostatnio zmodyfikowano 2008-06-26 17:51
kiniro Temat założony przez niniejszego użytkownika |
problem z tablicami » 2008-06-25 12:16:06 Mam mały kłopot z tablicą. Wyskakuje mi typowy błąd xp w tym kodzie. #include <iostream> #include <conio.h>
using namespace std; main() { int r, k; int tablica[ r ][ k ]; cout << "program wypisuje trojkat pascala\n"; cout << "podaj i: "; cin >> r; getch(); return 0; }
Zrobiłem test tablicy #include <iostream> #include <conio.h>
using namespace std; main() { int n, tablica[ n ]; cout << "ile komorek tablicy?" << endl; cin >> n; for( int i = 1; i <= n; i++ ) { cout << "a[" << i << "]="; cin >> tablica[ i ]; } cout << endl; for( int i = 1; i <= n; i++ ) { cout << "a[" << i << "]=" << tablica[ i ] << endl; } getch(); return 0; }
i działa bez zarzutu. Czemu jeśli staram się zadeklarować tablicę dwuwymiarową, wówczas kompilator przyjmuje to ale program się wysypuje? To samo się dzieje gdy zadeklarowałem dwie tablice jednowymiarowe. Z góry dziękuję za pomoc i pozdrawiam Kiniro |
|
DejaVu |
» 2008-06-25 13:00:25 Jeśli chcesz utworzyć tablicę o jakimś rozmiarze musisz to zrobić tak: int n; cin >> n; int tablica[ n ];
Tak jak Ty to robisz jest to błęde, ponieważ wartości zmiennych nie są zainicjowane -> czyli wartości są losowe (zazwyczaj bardzo duże). W przypadku tablicy dwuwymiarowej, wylosowanie dwóch dużych liczb oznacza w efekcie pomnożenie obu tych liczb. W konsekwencji może się okazać że próbujesz utworzyć tablicę o rozmiarach większych niż zasoby Twojego komputera, stąd też i program się wysypuje. |
|
kiniro Temat założony przez niniejszego użytkownika |
działa » 2008-06-25 13:54:48 Dzięki serdeczne. Działa bez zarzutu. Za kilka dni pochwalę się na forum trójkątem Pascala.
P.S. Tą uwagę co mi Pan podał też mógłby Pan dorzucić do kursu. |
|
DejaVu |
» 2008-06-26 17:51:45 Narazie jestem zajęty generalną przebudową i modernizacją portalu :) Jak ją skończę, zajmę się pisaniem dalszej części kursu i poprawianiem obecnych (w tym będę się starał uwzględnić problemy, które przedstawili użytkownicy portalu). Być może do każdego z rozdziałów dorobię coś takiego jak 'powiązane tematy na forum' i te rozwiązane problemy będą dowiązywane do lekcji. Pomysłów mam dużo na to by zrobić fajny i użyteczny portal, ale czas jest nieubłagalny :)
/edit: zamykam temat, skoro jest rozwiązany :) |
|
« 1 » |