Wpis z mikrobloga

#naukaprogramowania #programowanie #cpp

Sprawa wygląda następująco. Mam program o następującej budowie
Funkcja tworząca 2d tablice[n] [n] z losowymi wartościami
Funkcja tworząca tablice 1d[n] z losowymi wartościami
Funkcja wyświetlająca 2d
Funkcja wyświetlająca 1d

I teraz w mainie chcę w pewien sposób użyć tych tablic (rozwiązywanie układów równań). Problem w tym, że podczas wywoływania tych tablic mają one inne wartości. Wyczytałem że chodzi o array decaying ale ni #!$%@? nie umiem tego rozwiązać.

Normalnie wszystko bym wrzucił do maina bez podziału na funkcję, ale chcę utworzyć kilka par takich tablic.

Nie mam pojęcia co z tym zrobić. Mogę wkleić kod, ale trochę zajmuje. Byłbym wdzięczny gdyby ktoś spotkał się już z podobnym problemem.
  • 14
doprecyzujecie wypowiedź czy bawimy się dalej w elektrodę?

No więc dobrze...doigrałeś się :-)


1.Chcesz wysłać paczkę więc bierzesz pudełko pakujesz i wołasz kuriera
2.Kurier przyjeżdża ze swoim pudełkiem. Twoje zostawia.
3.Kurier wiezie swoje puste pudełko kurierowozem. Dzwoni do drzwi, lub puka. Wita się i odjeżdża z swoim pudełkiem,
4.Odbiorca bierze swoje własne pudełko, które cały czas miał w domu ... zagląda: ... a tam pusto!
Poza tym w funkcji void fillmatrix() masz podwójną pętle:

for (int i=0; i<n; i++){
for (int j=0; j<n; j++){

wewnątrz której używasz kodu:

matrix_a[i][i-1] = losowa;
Jak myślisz do jakiego elementu tablicy odwołasz się, gdy i będzie równe 0?
Dzięki, już rozumiem swoją głupotę
@MamCieNaHita
1. Dziwi mnie fakt że najpierw wyświetla ja poprawnie, a potem robiąc to w ten sam sposób już nie.
2. W sumie nie wiem, nie wiem czy c++ pluje się gdy przekraczam wymiary tablicy
3. Wezmę to pod uwagę

@kot_gagarina Wiedziałem że argument ad elektrodum jest mocny. Przykład dobrze obrazuje mój przypadek, teraz rozumiem.
Edit. Dlatego ten try catch, chyba rozwiązuje to sprawę
@spinel: dodatkowo, tablice deklarujesz wewnątrz funkcji, więc one będą widoczne tylko wewnątrz funkcji, po wykonaniu pamięć z wartościami funkcji może zostać użyta do czegokolwiek. Chyba skoczyłeś do basenu, mając w głębokim poważaniu sprawdzenie, czy jest tam woda.. Akurat ie było, więc trochę się pokiereszowałeś. Wróć do poznania podstaw i spróbuj napisać to za jakiś czas..