logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak posortować wszystkie elementy macierzy w C++?

Tompress 10 Lut 2007 13:41 4241 4
REKLAMA
  • #1 3552170
    Tompress
    Poziom 11  
    Posty: 37
    Ocena: 13
    Witam...

    Pierwszy raz spotykam się z C++... Moja jedyna styczność z programowaniem to assembler uC... :cry:

    Mam duży problem.. Otóż na zaliczenie wymagany jest jak się domyślam dla wielu banalny program który sortuje macierze.. Mam "programik" który taką macierz definiuje: (chyba ze nawet tego nie potrafię zrobic.. :cry: )

    #define maxw 20
    #define maxk 20

    void main(void)
    {
    int i, j, w, k;
    int tab[maxw][maxk];
    cout << "Liczba wierszy: " << endl;
    cin >> w;
    cout << "Liczba kolumn: " << endl;
    cin >> k ;
    for (i=0; i < w; i++)
    {
    cout << "Elementy " << i << " wiersza" << endl;
    for (j=0; j < k; j++)
    cin >> tab[i][j];
    }

    }

    Czy ktokolwiek jest w stanie mi pomóc?? Chodzi tu o dowolną metodę (aczkolwiek wszystkie elementy macierzy muszą być posortowane a nie tylko w wierszach czy kolumnach..) i było by wspaniale gdyby wynik dało się wyświetlić...

    Z góry dziękuję...
  • REKLAMA
  • #2 3552646
    masterix
    Poziom 14  
    Posty: 51
    Pomógł: 8
    Ocena: 3
    Cytat:
    #define maxw 20
    #define maxk 20
    To jest C, w C++ istnieją stałe i powinno się z nich korzystać.

    const int maxw = 20;
    const int maxk = 20;

    Nie wiem jak ma to być posortowane, możesz na jakimś konkretnym przykładzie to pokazać ? Wczytywanie na oko jest dobrze ;)
  • REKLAMA
  • #3 3552880
    Tompress
    Poziom 11  
    Posty: 37
    Ocena: 13
    Dzięki za zainteresowanie

    Ach sorki po prostu szukałem przykładów i to jakaś pozostałość po błędnie wklejonym programiku...

    Co do mojego programu to może obrazowo:

    dajmy na to że definiuje macierz 3x3 o elementach:
    2 6 12
    22 31 1
    9 76 44

    i po posortowaniu ma być
    1 2 6
    9 12 22
    31 44 76
    istotne żeby wszystkie elementy były posortowane od najmniejszego do największego... Z tablicą jednowymiarową dałem sobie radę ale tu poległem... :cry:
  • REKLAMA
  • #4 3554640
    x3r
    Poziom 18  
    Posty: 126
    Pomógł: 32
    Ocena: 2
    Wczytywanie jest tragicznie rozwiazane. Koniecznie zastosuj dynamicza alokacje pamieci (w razie problemow zapytaj google). A co do sortowania to zrob je dokladnie tak samo jak sortowanie tablicy jednowymiarowej. Stwórz pomocnicza tablice do ktorej wpiszesz elementy z macierzy pokolei jak leca wierszami, potem posortuj i wpisz spowrotem do macierzy.

    pozdrawiam
  • #5 3554658
    Samuraj
    Poziom 35  
    Posty: 2792
    Pomógł: 286
    Ocena: 619
    Przepisz wszystko do tablicy jedno wymiarowej 9 elementowej, następnie posortuj dowolną metodą np bombelkową, a na końcu wpisz z powrotem w macierz.
REKLAMA