Cześć! Próbuję rozwiązać następujące zadanie:
"Napisz program, który wylosuje 9 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. Wszelkie operacje mają zostać zrealizowane w oparciu o funkcje.Tablica ma być zadeklarowana w funkcji main. Oczekiwane funkcje : Wypełnienie tablicy o podanym rozmiarze losowymi liczbami z przedziału podawanego przez argumenty funkcji. Sumowanie określonej ilości liczb znajdujących się w tablicy i zwrot wyniku. Wypisywanie zawartości tablicy."
Przy obecnym stanie kodu, którego nie wiem jak poprawić, program losuje 10 liczb zamiast 9 i zamiast je sumować wyświetla pierwszą z wylosowanych liczb jako sumę.
Drugi problem jest większy (zresztą chyba jest źródłowy dla złego funkcjonowania tego programu): nie potrafię dobrze wywołać tych 3 funkcji w funkcji main, mimo że czytałam o tym w książce "Język c++. Szkoła programowania", oglądałam filmik pana Zelenta na ten temat i czytałam inny kurs.
#include <iostream>
#include <ctime>
#include <cstdlib>
void wylosujLiczby(int tablica[9])
{
int i = 0;
for (int i = 0; i < 9; i++)
{
tablica[i] = (rand() % 7) + 4;
}
}
void wypiszLiczby(int tablica[9])
{
std::cout << "Wylosowano nastepujace liczby: ";
int suma = 0;
for (int i = 0; i < 9; i++)
{
std::cout << tablica[i] << ", ";
}
}
int obliczSume(int tablica[9])
{
int iSuma = 0;
for (int i = 0; i < 9; i++)
{
std::cout << tablica[i] << ", ";
iSuma += tablica[i] ;
return iSuma;
}
}
int main()
{
int tablica[9];
std::srand(time(NULL));
wylosujLiczby(tablica);
wypiszLiczby(tablica);
int iSuma = obliczSume(tablica);
std::cout << "Suma liczb wynosi: " << iSuma << std::endl;
return 0;
}