#include #include using namespace std; class arraydb { private: unsigned int itssize; // ¹è¿­ÀÇ ¿ø¼Ò¼ö. double *arr; // ù° ¿ø¼ÒÀÇ ÁÖ¼Ò. public: arraydb(); explicit arraydb(unsigned int n,double val=0.0); arraydb(const double *pn,unsigned int n); arraydb(const arraydb &a); virtual ~arraydb(); unsigned int arsize() const { return itssize;} double average() const; virtual double & operator[](int i); virtual const double & operator[](int i) const; arraydb & operator=(const arraydb &a); friend ostream & operator<<(ostream & os,const arraydb &a); }; arraydb::arraydb() { arr=NULL; itssize=0; } arraydb::arraydb(unsigned int n,double val) { arr=new double[n]; itssize=n; for(int i=0;i0) { return sum/i; } else { cout<<"¼ºÀû ¹è¿­¿¡ Ç׸ñÀÌ ¾ø½À´Ï´Ù.\n"; return 0; } } double & arraydb::operator[](int i) { if (i<0 || i>=itssize) { cout<<"¹è¿­ÀÇ ÇÑ°è ¿¡·¯"; exit(1); } return arr[i]; } const double & arraydb::operator[](int i) const { if (i<0 || i>=itssize) { cout<<"¹è¿­ÀÇ ÇÑ°è ¿¡·¯"; exit(1); } return arr[i]; } arraydb & arraydb::operator=(const arraydb &a) { if (this==&a) return *this; delete [] arr; itssize=a.itssize; arr=new double [itssize]; for (int i=0;i