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

Rozdział 18 - zadanie domowe

Ostatnio zmodyfikowano 2015-01-11 02:03
Autor Wiadomość
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ć ;/
P-123789
Pokropow
» 2015-01-01 16:36:06
Pętla:

int i =0;

while(i<999)
{
liczba[ i ]=(std::rand()%7)+4;
i++;
}
P-123790
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
P-123791
NopeDotAvi
» 2015-01-01 17:14:15
bo nie liczba[999] tylko ma być liczba[ i ];
P-123793
Pokropow
» 2015-01-01 18:48:39
Poprawiłem, nie wiem czemu tak się zapisało, ale u siebie miałem liczba[ i ]
P-123804
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
P-123810
Pokropow
» 2015-01-01 19:32:04
W pętli daj
i++;
sprawdź granice losowania, bo masz inną niż wcześniej
P-123811
1aam2am1
» 2015-01-01 19:33:38
Wyskakuje 999 razy. Zmień liczbę np na 10 to wyskoczy tylko 10 razy
i dodaj i++
P-123812
« 1 » 2 3
  Strona 1 z 3 Następna strona