C++ Помогите пожалуйста))) срочно))
Создать класс А, который считает среднее из элементов массива. Массив из 5 элементов (любой)
Создать класс А, который считает среднее из элементов массива. Массив из 5 элементов (любой)
Задачу опять тупоголовый бухгалтер придумал? Класс ничего считать не должен, класс это класс, а метод класса это другое дело.
class A
{
private:
int* arr;
double avg;
public:
A() { arr=new int[5]; avg=0;}
A(int* array1)
{ avg=0; arr=array1; }
void Avg()
{
double sum=0,k=0;
for(int i=0; i<5; i++)
{
sum+=arr[ i];
k++;
}
avg=sum/k;
}
};
Нужно еще деструктор описать с уничтожением динамически созданного массива, иначе будет утечка памяти.. .
Кроме того, avg-то мы считаем, но это "вещь в себе", приватная, до нее без других методов не добраться
P.S. Предложу свой вариант:
#include
class A{public: A(int *a){int s=0; for(int i=0;i< 5;i++)s+=a[ i]; std::cout<< s/5;}};
int main(){int a[]={1,2,3,4,5};A b(a); std::cin.get();}