[C++] Sumowanie elementów tablicy przy użyciu osobnych funkcji
Ostatnio zmodyfikowano 2012-11-24 17:59
kris Temat założony przez niniejszego użytkownika |
[C++] Sumowanie elementów tablicy przy użyciu osobnych funkcji » 2012-11-24 17:41:52 Witam. Tematem zadania jest stworzenie tablicy 100 elementowej następnie wypełnienia jej losowymi liczbami z przedziału <4,10> i zsumowanie tych elementów.Wszystko byłoby ok gdyby w poleceniu nie było że wszystko to ma być wykonane w oddzielnych funkcjach a tylko tablica ma być zdeklarowana w mainie i tak napisałem taki kod: #include <cstdlib> #include <iostream> #include <ctime>
using namespace std; int wypelnianie( int tab[] ) { srand( time( 0 ) ); for( int i = 0; i <= 99; i++ ) { (( rand() % 7 ) + 4 ); tab[ i ] =(( rand() % 7 ) + 4 ); cout << tab[ i ] << endl; } } int suma( int tab[] ) { for( int i = 0; i <= 99; i++ ) { int suma = 0; suma = suma + tab[ i ]; i = i + 1; } cout << "Suma rowna sie: " << suma << endl; } int main( int argc, char * argv[] ) { int tab[ 100 ]; wypelnianie( tab ); suma( tab ); system( "pause" ); return 0; } Wszystko pierwsza część działa idealnie niestety suma ciągle wychodzi 1. Po przejrzeniu kodu uznałem że to wina tego że nie zwracam elementów tablicy. Spróbowałem więc to zrobić i wtedy to już w ogóle wszystko się zepsuło.Być może w kodzie o czymś zapomniałem i nie zauważyłem tego gdy go przeglądałem później.Jeśli ktoś ma jakieś pomysły co może być przyczyną to proszę o choćby nakierowanie mnie na właściwą ścieżkę:). Z góry dziękuje za wszelką pomoc. |
|
Berux |
» 2012-11-24 17:57:48 int suma nie powinna być wewnątrz pętli for tylko przed pętlą for. /edit: i jeszcze nie powinno być tam : i = i+1, bo dodajesz wartość jeden do licznika podczas tworzenia pętli for : i++ |
|
kris Temat założony przez niniejszego użytkownika |
» 2012-11-24 17:59:19 Widzisz przegapiłem to, teraz działa. Dzięki wielkie:) |
|
« 1 » |