#include <iostream>

template< typename T > void get( T a[], int n )
{
    std::cout << "enter " << n << " array elements: " ;
    for( int i = 0 ; i < n ; ++i ) std::cin >> a[i] ;
}

template< typename T > void sort( T a[], int n )
{
    for( int i=0 ; i<n ; ++i )
    {
        for( int j=i+1 ; j<n ; ++j )
        {
            if( a[j] < a[i] )
            {
                int temp = a[i] ;
                a[i] = a[j] ;
                a[j] = temp ;
            }
        }
    }
}

template< typename T > void display( const T a[], int n )
{
    std::cout << "the sorted array: " ;
    for( int i = 0 ; i < n ; ++i ) std::cout << a[i] << ' ' ;
    std::cout << '\n' ;
}

int main()
{
    constexpr int N = 5 ;
    int array[N] = {0} ;
    get( array, N ) ;
    sort( array, N ) ;
    display( array, N ) ;
}
