Tablice Jednowymiarowe - Program nie działa
Ostatnio zmodyfikowano 2015-07-02 11:39
Fakiron Temat założony przez niniejszego użytkownika |
Tablice Jednowymiarowe - Program nie działa » 2015-07-01 19:13:16 Witam. Piszę taki oto program: 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. #include <iostream> #include <ctime> #include <cstdlib>
int main() { srand( time( NULL ) ); int liczba[ 999 ]; int licznik = 999; int licznik2 = 999; int suma; do { liczba[ licznik ] =( rand() % 11 ) + 4; licznik--; } while( licznik >= 0 ); do { suma = 0 + liczba[ licznik2 ]; } while( licznik2 >= 0 ); std::cout << "Suma liczb wynosi: " << suma << std::endl; return 0; }
Czy mógłby mi ktoś powiedzieć dlaczego program nie robi nic? Z góry dziękuję. |
|
carlosmay |
» 2015-07-01 20:19:46 sume zadeklaruj od razu W drugiej pętli nic nie robisz z indeksem licznik2, suma = suma + liczba[ licznik2 - 1 ]; --licznik2;
999 elementów ma indeks max = 998. Na koniec od siebie, spróbuj indeksy inkrementować i zaczynać od zera gdzie zaczyna się tablica. Łatwiej zapanować nad porządkiem i lepiej widać co jest nie tak, przy ewentualnych błędach |
|
Fakiron Temat założony przez niniejszego użytkownika |
» 2015-07-02 11:26:37 #include <iostream> #include <ctime> #include <cstdlib>
int main() { srand( time( NULL ) ); int liczba[ 998 ]; int licznik = 0; int licznik2 = 0; int suma = 0; do { liczba[ licznik ] =( rand() % 11 ) + 4; licznik++; } while( licznik >= 998 ); do { suma = 0 + liczba[ licznik2 ]; licznik2++; } while( licznik2 >= 998 ); std::cout << "Suma liczb wynosi: " << suma << std::endl; return 0; }
A mógłby ktoś poprawić w tym błędy i podać mi gotowy kod, bo wraz nie działa, albo pokazuje liczby np. 10,11,4, a nie miał tak działać :/ |
|
BadBullPL |
» 2015-07-02 11:39:30 prosze przeanalizuj ten kod: #include <iostream> #include <ctime> #include <cstdlib>
int main() { srand( time( NULL ) ); int liczba[ 999 ]; int licznik = 0; int suma = 0; do { liczba[ licznik ] =( rand() % 7 ) + 4; licznik++; } while( licznik < 999 ); licznik = 0; do { suma += liczba[ licznik ]; std::cout << "Liczba nr " << licznik + 1 << " : " << liczba[ licznik ] << std::endl; licznik++; } while( licznik < 999 ); std::cout << "Suma liczb wynosi: " << suma << std::endl; return 0; }
|
|
« 1 » |