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

Tablice jednowymiarowe, a pętla

Ostatnio zmodyfikowano 2011-02-19 17:05
Autor Wiadomość
sadlawyer
Temat założony przez niniejszego użytkownika
Tablice jednowymiarowe, a pętla
» 2011-02-19 14:20:06
Mam problem z zadaniem domowym z tego rozdziału. Link: http://cpp0x.pl/kursy/Kurs-C++/Podstawy /Tablice-jednowymiarowe/292
Poprawnie działa losowanie i pozostałe fragmenty, prócz sumy. Wiem, że trzeba użyć do tego tablic i pętli, ale nie potrafię sobie wyobrazić jak miałoby to wyglądać. Próbowałem miliona kombinacji, któraś może była poprawna, ale gdzieś był jakiś błąd. Mógłby mi ktoś wytłumaczyć jak napisać pętle, która zsumuje wszystkie wylosowane wartości z tablicy?
P-28402
DejaVu
» 2011-02-19 14:38:19
Wklej rozwiązanie, które wydaje Ci się, że powinno działać. Naprowadzimy Ciebie na rozwiązanie :)

/edit:
Tak na pierwszy strzał to:
  • Potrzebujesz zmiennej, która będzie wykorzystana do przechowywania wyniku. Na początku musisz nadać wartość tej zmiennej 0, bowiem sumowanie zazwyczaj zaczyna się od zera ;p
  • Potem w pętli po prostu dodajesz do zmiennej wcześniej utworzonej kolejne liczby tablicy.
  • Sumę już masz, więc możesz ją wypisać :)
P-28403
sadlawyer
Temat założony przez niniejszego użytkownika
» 2011-02-19 14:41:58
C/C++
#include <iostream>
#include <cstdlib>
#include <ctime>
int wylosuj()
{
    int poczatek = 4;
    int ilosc = 7;
    int los =(( rand() % ilosc ) + poczatek );
    return los;
}
int main()
{
    int wylosowane[ 998 ];
    srand( time( NULL ) );
    int ile = 3;
    do
    {
        wylosowane[ ile ] = wylosuj();
        std::cout << wylosowane[ ile ] << std::endl;
        ile--;
    } while( ile > 0 );
   
    int wynik = 0;
    do
    {
        wynik = wynik + wylosowane[ ile ];
        ile--;
       
       
    } while( ile > 0 );
   
    std::cout << wynik;
   
   
   
    return 0;
}
P-28404
DejaVu
» 2011-02-19 14:44:15
W pierwszej pętli, która losuje liczby wypisujesz wylosowaną liczbę (nie zapisujesz nigdzie wyniku losowania) - powinieneś ją najpierw zapisać do tablicy, a następnie wypisać zapisaną wartość na ekran.
P-28405
sadlawyer
Temat założony przez niniejszego użytkownika
» 2011-02-19 14:51:08
Zapisałem ją do tablicy, ale wciąż nie liczy poprawnie.
P-28408
DejaVu
» 2011-02-19 15:06:02
1. Tablica ma 2 elementy - Ty chcesz zapisać 5 elementów
2. Piszesz poza zakresem tablicy.
3. Nie wypisujesz na ekran zapisanej wartości, tylko wypisujesz nową liczbę (którą losujesz ponownie i do niczego nie używasz).
P-28409
sadlawyer
Temat założony przez niniejszego użytkownika
» 2011-02-19 15:56:21
Wprowadziłem zmiany. Zwiększyłem rozmiar tablicy oraz zmieniłem to, co ma się pokazywać jako wylosowana liczba, jednak wciąż wychodzą mi bzdurne wyniki. Kod wyżej jest zaktualizowany.
P-28410
ison
» 2011-02-19 16:50:54
dopisz
ile = 3;
 przed drugim
do
P-28412
« 1 » 2
  Strona 1 z 2 Następna strona