lekcja 19 zadanie
Ostatnio zmodyfikowano 2013-08-30 01:45
jasiekm Temat założony przez niniejszego użytkownika |
lekcja 19 zadanie » 2013-08-29 18:10:29 witam, mam problem z przedzialem liczb, ma byc od 4-10 wlacznie a nie losuje 4. #include <iostream> #include <cstdlib> #include <ctime>
using namespace std; int wylosujLiczby( int tablica[], int max, int a, int b ) { int licznik = 0; do { tablica[ licznik ] =( rand() %( b - a ) + 1 ) + a; licznik++; } while( licznik < max ); return 0; } int wypiszLiczby( int tablica[], int max ) { int licznik = 0; do { cout << tablica[ licznik ] << ','; licznik++; } while( licznik < max ); return 0; } int obliczSume( int tablica[], int max ) { int licznik = 0; int suma = 0; do { suma += tablica[ licznik ]; licznik++; } while( licznik < max ); return suma; } int main() { int tablica[ 999 ]; wylosujLiczby( tablica, 999, 4, 10 ); wypiszLiczby( tablica, 999 ); int iSuma = obliczSume( tablica, 999 ); cout << "Suma liczb wynosi: " << iSuma << endl; return 0; }
gdzie popelnilem blad? |
|
pekfos |
» 2013-08-29 19:34:25 Brakuje wywołania srand(). |
|
Monika90 |
» 2013-08-29 20:41:25 Oprócz tego o czym napisał pekfos, to też masz źle ( rand() %( b - a ) + 1 ) + a
Jeżeli b == 10, a == 4, to mamy: rand() % 6 + 1 + 4 rand() % 6 daje liczbę z przedziału od 0 do 5 włącznie, po dodaniu do niej 1 i 4 dostaniesz liczbę z przedziału od 5 do 10. |
|
jasiekm Temat założony przez niniejszego użytkownika |
» 2013-08-29 23:44:28 z kolei kiedy dam zeby bylo z przedzialu od 3 to nie wyswietla 10 |
|
domin568 |
» 2013-08-30 01:45:11 To napisz o 1 wiecej to osiagniesz swój cel :)
|
|
« 1 » |