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

Zadanie z 19 rozdziału.

Ostatnio zmodyfikowano 2011-05-27 22:04
Autor Wiadomość
wojtu111
Temat założony przez niniejszego użytkownika
Zadanie z 19 rozdziału.
» 2011-05-27 19:28:17
Uczyłem się, uczyłem. Próbowałem, starałem się i niestety skończyły mi się pomysły. Nie chcę gotowego rozwiązania jedynie małej podpowiedzi. Mój problem pojawił się w tym momencie.
C/C++
int main()
{
    int tablica[ 999 ];
    wylosujLiczby( tablica, 999, 4, 10 );
    wypiszLiczby( tablica, 999 );
    int iSuma = obliczSume( tablica, 999 );
    std::cout << "Suma liczb wynosi: " << iSuma << std::endl;
    std::cout << tablica[ 1 ];
    return 0;
}
Do tego miałem dostosować swój "program".
Ale pojawił się mały problem. Pierwszą funkcję napisałem w ten sposób:
C/C++
int wylosujLiczby( int liczby[], long t, int poczatek, int koniec )
{
    int zmienna = 0;
    srand( time( NULL ) );
    do
    {
        liczby[ zmienna ] = rand();
        zmienna++;
    } while( liczby[ zmienna ] > poczatek || liczby[ zmienna ] < koniec || zmienna < t );
   
}
I z tego by było że moje liczby są przypisane do zmiennej tablica. ( No chyba że się mylę ;/)
I tu pojawił się problem, gdy zacząłem pisać funkcje "wypiszLiczby"
C/C++
int wypiszLiczby( int t[], int a )
{
    int zmienna = 0;
    do
    {
        std::cout << t[ zmienna ] << ", ";
        zmienna++;
    } while( zmienna < a );
   
}
I nie wypisuje mi liczb i się zacząłem zastanawiać czy oby na pewno zmienna "tablica" przypisała mi wartości do zmiennej "t". Nie chce gotowego rozwiązania jedynie drobnej podpowiedzi bądź rady.
Z góry dziękuję ;)
P-33541
kicektm
» 2011-05-27 19:40:59
while ( liczby[ zmienna ] > poczatek ||  liczby[ zmienna ] < koniec || zmienna < t );
nie wiem czy dobrze zrozumialem problem, ale chyba tam powinno byc chyba
while ( zmienna < t );

//nie ustalies tez z jakiego zakresu chcesz losowac
P-33543
DejaVu
» 2011-05-27 19:51:07
C/C++
wylosujLiczby( tablica, 999, 4, 10 );
Wykomentuj ten wiersz i sprawdź czy funkcja wypisująca zawartość na ekran zadziała. Jeżeli tak, to znaczy, że błąd masz w funkcji losującej :)
P-33545
Mrowqa
» 2011-05-27 20:20:27
C/C++
do
{
    liczby[ zmienna ] = rand();
    zmienna++; // a jeśli wylosowało źle ?? indeks się zwiększa ?? do tego PRZED sprawdzeniem warunku !? :P
} while( liczby[ zmienna ] > poczatek || liczby[ zmienna ] < koniec || zmienna < t );
Chciałeś podpowiedzi - masz :P Wiem w czym problem :D

Pozdrawiam,
Mrowqa
P-33550
wojtu111
Temat założony przez niniejszego użytkownika
:))
» 2011-05-27 22:04:26
I się udało ;) dziękuję wszystkim za pomoc a błąd znajdował się w funkcji losującej.

Temat do zamknięcia.
P-33558
« 1 »
  Strona 1 z 1