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

przkazywanie wektora pomiędzy funkcjami

Ostatnio zmodyfikowano 2015-02-21 21:52
Autor Wiadomość
Rookie
Temat założony przez niniejszego użytkownika
przkazywanie wektora pomiędzy funkcjami
» 2015-02-21 21:43:46
witam,
uczę się programować i napotkałem problem: jak przekazać wartość wektora z funkcji do funkcji.
wiem, że tablice są przekazywane do funkcji referencjami, ale wygląda na to że wektory nie są, lub moja funkcja pobierz go usuwa po zamknięciu, sam nie wiem,
może sprawę załatwi zwracanie funkcji pobierz, wtedy funkcja wyświetl zobaczy ten wektor w pamięci, tylko co wpisać w return?

kod programu:
C/C++
#include <iostream>
#include <vector>                              // umożliwia korzystanie z wektorów
//zapisem vector<typ wektora> nazwa wektora(ilość elementów, wartość początkowa tych elemetów)
using namespace std;
double pobierz( vector < double > oceny ) // przekazywanie wektora do funkcji
{
    int a( 0 );
    cout << "ile bedzie ocen?" << endl;
    cin >> a;
    for( int i( 0 ); i < a; i++ )
    {
        cout << "podaj " << i << " ocene " << endl;
        cin >> a;
        oceny.push_back( a );
    }
   
}
double wyswietl( vector < double > oceny )
{
    double srednia( 0 );
    for( int i( 0 ); i < oceny.size(); ++i ) // Granicę dla naszej pętli stanowi wartość notes.size()
    {
        srednia += oceny[ i ]; // Sumujemy wszystkie oceny
    }
   
    srednia /= oceny.size(); // Ponownie używamy wywołania notes.size(), aby dowiedzieć się, jaka jest liczba ocen
   
    cout << "Twoja srednia wynosi: " << srednia << endl;
}
int main()
{
    cout << "program liczy średnia z podanej liczby ocen" << endl;
    vector < double > oceny; // Pusta tablica oceny
    /*
    oceny.push_back(4.5);                   // Dodajemy elementy z ocenami
    oceny.push_back(6);                    // wpychamy dodatkowe elementy na koniec wektora
    oceny.push_back(2);
    oceny.push_back(3);                  //  oceny.pop_back(); usuwamy elementy wektora od końca
    oceny.push_back(4);
    oceny.push_back(5);
    */
    pobierz( oceny );
    wyswietl( oceny );
    system( "PAUSE" );
    return 0;
}
P-127020
Pokropow
» 2015-02-21 21:46:37
W deklaracji:
double pobierz( vector < double > & oceny )
P-127021
Rookie
Temat założony przez niniejszego użytkownika
» 2015-02-21 21:52:33
dziękuje, takie proste:)
P-127023
« 1 »
  Strona 1 z 1