#include < iostream >
#include using namespace std; const int MAX = 1000; template class 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);
cout « "Sonlar yig‘indisi teng" « sum (numbers)« endl; cout« "0‘rtacha qiymat teng" « average_value(num-
bers)« endl;
for (i = 0; i<5; i++) values.add_value((float)i * 100);
show_array(values);
cout« "Sonlar yig‘indisi teng" « sum(values) « endl; cout« "0‘rtacha qiymat teng" « average_value (values) « endl; return 0;
}
Natija:
0 1234
Do'stlaringiz bilan baham: |