Witam,
Jestem zupełnym nowicjuszem jeżeli chodzi o programowanie w C++, oraz programowanie ogólnie.
Moim celem jest stworzenie tablicy dynamicznie alokowanej i obliczenie średniej jej elementów przy pomocy funkcji, problemy pojawiają się kiedy chcę wykonać tę drugą czynność.
Wprowadziłem małą poprawkę, ale nie moge przekonwertować *double do double.
Oto mój kod:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
double srednia(int n, double *tab[])
{
double pz;
double sr = 0;
for (int i; i < n; i++)
{
pz=tab[i];
sr+=pz;
}
return double(sr/n);
}
int main()
{
int n;
srand( time( NULL ) );
cout << "Podaj ilosc elementow tablicy." << endl;
cin >> n;
double* p = new double[n];
cout << "Dla Twojej tablicy wylosowano nastepujace wartosci z zakresu od zera do stu:" << endl;
for (int i=0;i<n;i++)
{
p[i]=rand()%100;
if (i==(n-1))
cout << p[i] << endl;
else
cout << p[i] << ", ";
}
cout << srednia(n,p) << endl;
Prosił bym dodatkowo o link do jakiegoś artykułu przejrzyście opisującego wyjątki w C++, szukałem w google, ale wszystko jest napisane w tak chaotyczny sposób, że ciężko coś zrozumieć.