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

43. Wskaźniki - Zadanie domowe

Ostatnio zmodyfikowano 2018-08-05 15:07
Autor Wiadomość
Kietlon
Temat założony przez niniejszego użytkownika
43. Wskaźniki - Zadanie domowe
» 2018-01-25 02:48:31
Treść zadania jest następująca:
Napisz funkcję void sortuj(int* begin, int* end), która dowolną metodą sortuje liczby w tablicy, podanej przez wskaźnik na pierwszy element i element za końcem tablicy. Weź funkcję wypisz() z przykładu i użyj tego main():

Oto mój kod wraz z elementami z treści zadania:
C/C++
#include <iostream>

void sortuj( int * begin, int * end )
{
    while( begin != end )
    {
        if( * begin > * begin + 1 ) //Jeżeli tablica, ktora mamy jest wieksza od kolejnej, przerwij
             break;
       
        begin++;
    }
}

void wypisz( int * begin, int size )
{
    while( size > 0 )
    {
        std::cout << * begin << ' ';
        ++begin;
        --size;
    } //Wypisuje tablice
}

int main()
{
    int tab[ 10 ] = { 0, 9, 1, 3, 8, 2, 6, 7, 5, 4 };
    sortuj( tab, tab + 10 );
    wypisz( tab, 10 );
}

Próbowałem na różne sposoby przesortować tablice, jednak nie doszedłem do prawidłowego rozwiązania. Znalazłem rozwiązania w internecie z metodą swap, ale wiem, że skoro to zadanie domowe jest w tym kursie to wystarczy wiedza właśnie z niego.
P-168975
YooSy
» 2018-01-25 05:45:06
if( * begin > * begin + 1 )
 tutaj operator * ma wyższy priorytet niż +. Zastosuj nawiasy do ustalenia kolejności działań.

Pokaż kod sortowania.

Znalazłem rozwiązania w internecie z metodą swap, ale wiem, że skoro to zadanie domowe jest w tym kursie to wystarczy wiedza właśnie z niego.
Rozwijanie się na własną rękę nie jest zabronione. W zasadzie najlepiej mają "leniwi" programiści. Jaki problem napisać własną funkcję void swap(int* l, int* r);?
P-168976
pekfos
» 2018-01-25 12:58:57
Najprościej zaimplementować sortowanie przez wybór. Zamień pierwszy element zakresu z najmniejszym elementem. Napisz sobie do tego funkcję pomocniczą
C/C++
int * min_elem( int * begin, int * end )
P-168979
Rafał19
» 2018-08-05 15:07:31
<< removed by pekfos - przeczytaj zasady zakładania tematów, załóż własny temat >>
P-172020
« 1 »
  Strona 1 z 1