Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Tablica dwuwymiarowa sortowanie

Ostatnio zmodyfikowano 2016-01-27 20:11
Autor Wiadomość
Moozy
Temat założony przez niniejszego użytkownika
Tablica dwuwymiarowa sortowanie
» 2016-01-26 20:59:24
Witam mam problem, próbuje napisać program ktory posortuje mi tablice dwuwymiarowa losowo wypelnianymi cyframi z uprzednim podaniem rozmiaru. Nie wiem za bardzo jak sie za to zabrac, probowalem swapem, szukaniem najmniejszej wartosci itp, ale bez skutku :( chodzi mi glownie o to zeby posortowalo mi tablice od najmniejszej wartosci do najwiekszej i wypisalo te liczby w jednym zadku. Moge liczyc na pomoc? :/
P-144042
kmlkamilek
» 2016-01-26 23:36:22
Chodzi ci o coś takiego?

Losowe liczby:
[16][9][13]
[34][39][5]
[67][14][15]

Posortowane:
[5][9][13]
[14][15][16]
[34][39][67]

"[...] wypisalo te liczby w jednym zadku" - mamy przed to rozumieć, że chcesz wyświetlić je jednym rządku?
Nawet jeśli robisz błędy ortograficzne, to używaj polskich znaków. Ułatwi to zrozumienie wiadomości i ułatwi czytanie, nawet jeśli są w nim błędy.
P-144048
pekfos
» 2016-01-26 23:40:49
chodzi mi glownie o to zeby posortowalo mi tablice od najmniejszej wartosci do najwiekszej i wypisalo te liczby w jednym zadku.
Skoro chcesz mieć liczby w jednym 'zadku' (wtf?), to po co ci w ogóle tablica dwuwymiarowa? Nie prościej mieć jednowymiarową i posortować ją gotowymi funkcjami?
P-144049
kmlkamilek
» 2016-01-26 23:43:28
@pekfos

Też się nad tym zastanawiam. Posortowanie tablicy jednowymiarowej oszczędziło by zbędnego kombinowania.
P-144051
mateczek
» 2016-01-27 12:26:34
jak dla mnie nie ma tablic dwu wymiarowych !!! nie wiem jak to fachowo wygląda ale te dane są w rzędzie !!!!

C/C++
#include <iostream>
using namespace std;


int main()

{
    int tab[ 3 ][ 3 ] = { { 23, 3, 56 }, { 32, 5, 66 }, { 100, - 3, 12 } }; // niby dwa wymiary, ale
    int * tab2 =( int * ) tab;
    for( int i = 0; i < 9; i++ ) {
        cout << tab2[ i ] << " ";
    }
   
}

A tu sortowanie

C/C++
#include <iostream>
using namespace std;


int main()

{
    int tab[ 3 ][ 3 ] = { { 23, 3, 56 }, { 32, 5, 66 }, { 100, - 3, 12 } };
    int * tab2 =( int * ) tab;
    //sortowanie bombelkowe
    int pom;
    for( int i = 0; i < 9; i++ )
    for( int j = 0; j < 9 - i - 1; j++ ) //pętla wewnętrzna
    if( tab2[ j ] > tab2[ j + 1 ] )
    {
        //zamiana miejscami
        pom = tab2[ j ];
        tab2[ j ] = tab2[ j + 1 ];
        tab2[ j + 1 ] = pom;
    }
    //wyswietlenie tablicy jako dwa wymiary!!!
    for( int i = 0; i < 3; i++ ) {
        for( int k = 0; k < 3; k++ ) cout << tab[ i ][ k ] << " ";
       
        cout << endl;
    }
}
P-144058
pekfos
» 2016-01-27 12:35:45
jak dla mnie nie ma tablic dwu wymiarowych !!! nie wiem jak to fachowo wygląda ale te dane są w rzędzie !!!!
A skąd wiesz, o jaką tablicę dwuwymiarową chodzi..? Dla int** to nie zadziała.
P-144059
Moozy
Temat założony przez niniejszego użytkownika
» 2016-01-27 20:11:48
Ugh, przepraszam za moje chaotyczne pisanie :/ Chodzi mi dokładnie o coś takiego jak opisał kmlkamilek
P-144079
« 1 »
  Strona 1 z 1