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

Przekazywanie tablic jednowymiarowych do funkcji

Ostatnio zmodyfikowano 2013-12-09 17:55
Autor Wiadomość
Futei
Temat założony przez niniejszego użytkownika
Przekazywanie tablic jednowymiarowych do funkcji
» 2013-12-09 17:17:47
Witam,
moja nauka C++ zatrzymała się dzisiaj na etapie lekcji 19., gdy po rzekomo prawidłowym skompilowaniu kodu, jedyne, co otrzymuję to czarna konsola.
Polecenie do zadania brzmi:

Napisz program, który wylosuje 999 liczb całkowitych z zakresu od 4 do 10 włącznie, wypisze te wartości na ekran, po czym zsumuje je i wynik wypisze na ekran. Wszelkie operacje mają zostać zrealizowane w oparciu o funkcje. Tablica ma być zadeklarowana w funkcji main. Oczekiwane funkcje:

   - Wypełnienie tablicy o podanym rozmiarze losowymi liczbami z przedziału podawanego przez argumenty funkcji.
   - Sumowanie określonej ilości liczb znajdujących się w tablicy i zwrot wyniku.
   - Wypisywanie zawartości tablicy.

Tak wygląda mój kod:

C/C++
#include <iostream>
#include <ctime>
#include <cstdlib>


int Losowanie( int Tab[], int tab, int start, int ile )
{
    srand( time( NULL ) );
    int i = 0;
    do
    {
        int Liczba =( rand() % ile - start + 1 ) + start;
        Tab[ i ] = Liczba;
       
    } while( i < tab );
   
    return 0;
}
int Wypisywanie( int Tab[], int tab )
{
    int i = 0;
    std::cout << "Liczby: ";
    do
    {
        std::cout << Tab[ i ] << ", ";
        i++;
    } while( i < tab );
   
    return 0;
}
int Suma( int Tab[], int tab )
{
    int Suma = 0;
    int licznik = 0;
    do
    {
        std::cout << Tab[ licznik ] << " \n";
        Suma += Tab[ licznik ];
        licznik++;
    } while( licznik < tab );
   
    return Suma;
}

int main()
{
    int Tablica[ 999 ];
    Losowanie( Tablica, 999, 4, 10 );
    Wypisywanie( Tablica, 999 );
    int iSuma = Suma( Tablica, 999 );
    std::cout << "Suma liczb wynosi: " << iSuma << std::endl;
    system( "pause" );
    return 0;
}


Nie mam pojęcia, co jest przyczyną blędnego uruchamiania programu. Czy coś jest nie tak z kodem?
P-98813
Mitu
» 2013-12-09 17:41:13
C/C++
srand( time( NULL ) );
int i = 0;
do
{
    int Liczba =( rand() % ile - start + 1 ) + start;
    Tab[ i ] = Liczba;
   
} while( i < tab );

i jest cały czas równe 0, pęta wykonuje się w nieskończoność.
P-98816
Futei
Temat założony przez niniejszego użytkownika
» 2013-12-09 17:55:38
Ojejku, moje głupstwo ;/
Dziękuję bardzo :)
P-98818
« 1 »
  Strona 1 z 1