Write a program using class template to arrange N numbers of type int and float in descending order.

Sep 2, 2019

Source code:

//program to find the maximum of array template

#include <iostream>
using namespace std;
const int N = 7;

template <class Type>
class Array{
    private:
        Type arr[N];
    public:
        void read(){
            for(int i = 0; i < N; i++){
                cin>>arr[i];
            }
        }
        void sortArr(){
            Type temp;
            int SIZE = sizeof(arr)/sizeof(Type);
            for(int i = 0; i < SIZE - 1; i++){
                for(int j = i + 1; j < SIZE; j++){
                    if(arr[i] < arr[j]){
                        temp = arr[i];
                        arr[i] = arr[j];
                        arr[j] = temp;
                    }
                }
            }
        }
        void display(){
            int SIZE = sizeof(arr)/sizeof(Type);
            for(int i = 0; i < SIZE; i++){
                cout<<arr[i]<<" ";
            }
            cout<<endl;
        }
};

int main(){
    Array <int> i_obj;
    Array <float> f_obj;
    //reading integer array
    cout<<"Enter integer array:";
    i_obj.read();
    //reading floating number array
    cout<<"Enter floating number array:";
    f_obj.read();
    i_obj.sortArr();
    f_obj.sortArr();
    cout<<"Sorted integer array:"<<endl;
    i_obj.display();
    cout<<endl<<"Sorted floating number array:"<<endl;
    f_obj.display();
    return 0;
}

 

 

Sample run:

Enter integer array:3
66
5
88
2
1
77
Enter floating number array:4.4
55.55
99.77
66.66
33.33
22.2
80.0
Sorted integer array:
88 77 66 5 3 2 1 

Sorted floating number array:
99.77 80 66.66 55.55 33.33 22.2 4.4