Tablice i funkcje, zwracanie tablic przez funkcje - czyli pewne zadanko

0

Witam. Uczę się C++ z pewnego internetowego kursu i właśnie zrobiłem zadanie związane z pętlą for, ale mój problem dotyczy czegoś zupełnie innego - zwracania tablicy przez funkcję.

A oto zadanie:

user image
Autor kursu życzy sobie, by main zawierał w gruncie rzeczy same funkcje. Niestety nie potrafię tego tak zrobić. Udało mi się wymyślić jedynie to:

 int main()
{
    srand (time (NULL));
    int tablica[10];

    for(int a = 0; a < 10; a++)
    {
        tablica[a] = losowanie();
    }

    wypisanieTablicy(tablica);
    wypisanieOdTylu(tablica);
    int lmin = znajdzMin(tablica);
    int lmax = znajdzMax(tablica);
    wypisanieMinMax(lmin, lmax);

    return 0;
}

Jakby ktoś chciał zobaczyć cały kod, wraz ze wszystkimi funkcjami, wkleiłem go do waszego pastebina żeby post był bardziej przejrzysty. To, co na tym forum służy do formatowania tekstu to HTML, a nie BBcode, więc naprawdę nie wiem, jak zrobić jakiś spoiler. Oto link: http://4programmers.net/Pastebin/3134

Program działa poprawnie i raczej wykonałem zadanie, ale nie daje mi to spokoju. Czy da się tak zrobić, by funkcja losowanie() zwracała tablicę? Z tego co wiem to do funkcji da się przekazać (Przekazać? Tak powinienem mówić, jeśli chcę używać fachowej terminologii?) tablicę, ale funkcja już nie może zwrócić całej tablicy. Mam rację?

Przy czym cały czas mówię tu o tablicach jednowymiarowych. Innych po prostu nie znam :P

I stąd też moje pytanie: Czy da się to zadanie zrobić tak, by main wyglądał identycznie do tego, jak zażyczył sobie autor? Czy może nie jest to możliwe, autor się zagalopował/rozkojarzył/był zaspany/whatever, a mój sposób jest na tyle dobry, że lepiej się już nie da?

0

Tutaj masz zwracanie tablicy: http://stackoverflow.com/questions/3473438/c-return-array-in-a-function
Użyj google bo jest tego w sieci sporo.

0
#include <ctime>
#include <cstdlib>
#include <iostream>
using namespace std;

void wylosujLiczby(int tablica[],unsigned size)
  {
   for(unsigned i=0;i<size;++i) tablica[i]=10+rand()%21;
  }

int main()
  {
   srand(time(0));
   int tablica[10];
   wylosujLiczby(tablica,10);
   //wypisanieTablicy(tablica);
   //wypisanieOdTylu(tablica);
   //int lmin = znajdzMin(tablica);
   //int lmax = znajdzMax(tablica);
   //wypisanieMinMax(lmin, lmax);
   return 0;
  }

http://ideone.com/R3zksq

1 użytkowników online, w tym zalogowanych: 0, gości: 1