#include < iostream > #include using namespace std; const int MAX = 1000; templateclass Array { public: Array(int max_size); int add value(T); T sum(); Tl average_value(); void show_array(); private: T data [MAX]; int maxsize; int index; }; template Array ::Arrav(int size) { { cerr « "Xotira yetarli emas - dastur tugayapti" « endl; exit(l); } Array:: max_size=size; Arrav::index = 0; }; template < class T, class Tl> int Array ::add_value(T value) { if (index== max_size) return(-l); // Massiv to‘la else { data[index]=value; index++; return(O); // Omadli } } template T Array::sum() { ' T sum = 0; for (int i = 0; i } template T1 Array::average_value() { T1 sum=0; for (int i = 0; i } template < class T, class Tl> void Array ::show_arrav()
{ for (int i = 0; i } int main() { //100 ta elementdan iborat massiv Array numbers(lOO); // 200 ta elementdan iborat massiv Array values(200); int i; for (i=0; i<5; i + +) numbers.add value(i); numbers.show_array(); cout« "Sonlar yig‘indisi teng" « numbers.sum () « endl; cout « "0‘rtacha qiymat teng" « numbers.average_value() « endl; for (i=0; i<5; i + +) values.add_value((float)i * 100); vaIues.show_array(); cout« "Sonlar yig‘indisi teng" « values.sum() « endl; cout « O'rtacha qiymat teng" « values.average_value() « endl; ' return 0;}
Natija: 0 1234 Sonlar yig‘indisi teng 10 O'rtacha qiymat teng 2 0100200300 400 Sonlar yig‘indisi teng 1000 0‘rtacha qiymat teng 200 Navbatdagi dasturda array sinf shabloni global funksiya argumenti boiib xizmat qiladi. #include using namespace std;
const int MAX = 1000; template < class T> class array { public: array(int max_size); int add_value(T); int size(){return index;}; T& operator[](int i) { return data[i]; }
private: T data[MAX]; int max_size; int index; }; template < class T> array ::array(int size) { if (size> =MAX) { cerr « "Xotira yetarli emas - dastur tugayapti" exit(l); } array: :max_size=size; array::index=0; }; template < class T> int array::add_value(T value) { if (index== max_size) return(—1); // Massiv to‘la else { data[index] =value; index++; return(O); // Omadli } } template < class T> T sum(array data) { int index=data.size(); T sum = 0; for (int i=0; i } template < class T, class Tl> T average_value(array data) { int index=data.size(); T1 sum = 0; for (int i = 0; i } template void show_array(array data) { int index = data.size(); for (int i = 0; i } int main() { //100 ta elementdan iborat massiv array numbers(lOO); // 200 ta elementdan iborat massiv array < float> values(200); int i; for (i=0; i<5; i++) numbers.add_value(i); showarray(numbers);