Rozdział 18 - zadanie domowe
Ostatnio zmodyfikowano 2015-01-11 02:03
Xtremox0912 Temat założony przez niniejszego użytkownika |
Rozdział 18 - zadanie domowe » 2015-01-01 16:33:27 Cześć chciałbym aby ktoś napisał jak to ma wyglądać ponieważ nie wiem jak użyć pętli do tego zadania Zadanie domowe 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. Program ma wykorzystywać tablicę, która zostanie najpierw wypełniona liczbami losowymi z określonego przedziału, a następnie wynik zostanie obliczony na podstawie zawartości całej tablicy.
Próbowałem tak zaczynać:
#include <iostream> #include <ctime> #include <cstdlib>
int main() { int liczba [ 999 ]; int losowanie; int suma; srand(time(NULL)); std::cout << "Trwa losowanie 999 liczb";
( I nie wiem jaka petle wybrac aby wszystkie liczby zostaly wylosowane próbowałem tak: do { liczba [ 999 ] = std::rand()%10+1; }while(liczba==999)
)
jak by ktoś mógł wykonać te zadanie to sobie przeanalizuje co i jak bo nie rozumiem jak to zrobić ;/ |
|
Pokropow |
» 2015-01-01 16:36:06 Pętla:
int i =0;
while(i<999) { liczba[ i ]=(std::rand()%7)+4; i++; }
|
|
Xtremox0912 Temat założony przez niniejszego użytkownika |
» 2015-01-01 16:48:39 Tak jak pisałeś
#include <iostream> #include <ctime> #include <cstdlib>
int main() { int liczba [ 999 ]; int nr = 1; int losowanie; srand(time(NULL));
int i = 0;
while(i<999) { liczba [ 999 ] =(std::rand()%7) +4; } return 0; }
I nic nie wyskakuje a jeżeli liczbe dam bez [ 999 ] to wyskakuje error |
|
NopeDotAvi |
» 2015-01-01 17:14:15 bo nie liczba[999] tylko ma być liczba[ i ]; |
|
Pokropow |
» 2015-01-01 18:48:39 Poprawiłem, nie wiem czemu tak się zapisało, ale u siebie miałem liczba[ i ] |
|
Xtremox0912 Temat założony przez niniejszego użytkownika |
» 2015-01-01 19:29:56 Zrobiłem tak jak kazaliście
#include <iostream> #include <ctime> #include <cstdlib>
int main() { int liczba [ 999 ]; int losowanie; srand(time(NULL));
int i = 0;
while(i<999) { liczba [ i ] =(std::rand()%999) +1; } return 0; }
i po włączeniu nic nie wyskakuje
natomiast jak tak zrobie
#include <iostream> #include <ctime> #include <cstdlib>
int main() { int liczba [ 10 ]; int losowanie; srand(time(NULL));
int i = 0;
while(i<999) { liczba [ i ] =(std::rand()%999) +1; std::cout << liczba [ i ] << std::endl; } return 0; }
To wyskakuje tych liczb nie skończoność co zrobić żeby wyskoczyło tylko 999 razy |
|
Pokropow |
» 2015-01-01 19:32:04 W pętli daj i++; sprawdź granice losowania, bo masz inną niż wcześniej |
|
1aam2am1 |
» 2015-01-01 19:33:38 Wyskakuje 999 razy. Zmień liczbę np na 10 to wyskoczy tylko 10 razy i dodaj i++ |
|
« 1 » 2 3 |