sortowanie bąbelkowe - void

sortowanie bąbelkowe - void
ArtS
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 32
0

Hej, napsiałem coś takiego i nie rozumiem 1 rzeczy:
a) Przy funkcji WypiszPrzed specjalnie zastosowałem typ void dla testu i nie rozumiem czemu to działa. Wypełniając tablicę w funkcji Wpisz muszę przecież ją zwrócić, aby funkcja Posortuj mogła pobrać elementy z tablicy i je posortować <-void nie zwraca przecież żadnej wartości więc jak wpisane wartości znalazły się w tablicy w main?

P.S.jeżeli moje pytania ro rak to przepraszam

Kopiuj
#include <iostream>

using namespace std;


void Wpisz(int t[], int n);
void WypiszPrzed(int t[], int n);
void Posortuj (int t[], int n);
void WypiszPo(int t[], int n);


int main()
{
    int n =10;
    int tablica[n];

    Wpisz(tablica, n);
    cout<<"----------------------"<<endl;

    WypiszPrzed(tablica, n);
    cout<<"----------------------"<<endl;

    Posortuj(tablica, n);
    cout<<"----------------------"<<endl;

    WypiszPo(tablica, n);




}
    void Wpisz(int t[], int n)
        {
        cout<<"wpisz elementy tablicy: "<<endl;

        for(int i=0;i<n;i++)
            {
            cout<<"wartosc elemntu tablica["<<i<<"]: ";
            cin>>t[i];
            }

        }
    void WypiszPrzed(int t[], int n)
        {
        cout<<"elementy tablicy przed posortowaniem: "<<endl;

        for(int i=0;i<n;i++)
            {
            cout<<"wartosc elemntu tablica["<<i<<"]: ";
            cout<<t[i]<<endl;
            }

        }
    void Posortuj (int t[], int n)
    {
        for (int i=0; i<n-1; i++)
            for (int j = n-1; j>1; --j)
            if(t[j-1]>t[j])
            swap(t[j],t[j-1]);

    }
    void WypiszPo(int t[], int n)
        {
            cout<<"elementy tablicy po posortowaniu: "<<endl;
            for(int i=0;i<n;i++)
            {
            cout<<"wartosc elemntu tablica["<<i<<"]: ";
            cout<<t[i]<<endl;
            }

        }


kq
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
5

Przekazywanie parametru przez wartość i referencję

@szweszwe trafnie przypomniał w komentarzu, że rownowartość T[] i T* w parametrach funkcji oraz niejawne przekształcenie tablicy we wskaźnik do jej pierwszego elementu mogą być zaskakujące. Więc powyższe rozpatruj w tym kontekście.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.