so i tried sorting arr2 from lowest to highest value, but it only gives me 4 values and then the rest are zero. Any thoughts on how to fix this?

#include <iostream> 
#include <iomanip>
using namespace std;

int main()
{

   cout << fixed << setprecision(1);
   float userMin;
   float userMax;

   const int SIZE = 21;
   float arr[SIZE];
   const int SIZE2 = 21;
   float arr2[SIZE2];
   int count = 0;
   cout << "enter min ";
   cin >> userMin;
   cout << "enter max ";
   cin >> userMax;
   float inc = (userMax - userMin) / (SIZE-1);
   float x = inc*count + userMin;




   for (; x <= userMax;)
   {
      for (int e = 0; e < SIZE; e++)
      {
         arr[e] = x;
         arr2[e] = (0.0572*cos(4.667*x) + 0.0218*cos(12.22*x));
         cout << setw(15) << setprecision(1)<< arr[e]
            << setw(15) << setprecision(3) << arr2[e]
            << endl;


         count++;
         x = userMin + inc*count;


      }
   }


   int temp;


      for (int e = 0; e < SIZE-1; e++)
      {

         for (int j = e+1; j < SIZE; j++)
         {

            if (arr2[e] > arr2[j])
            {
               temp = arr2[e];
               arr2[e] = arr2[j];
               arr2[j] = temp;

            }

         }
      }

      for (int e = 0; e < SIZE; e++)
      {
         cout << "sorted: " << arr2[e] << endl;
      }

   return 0;
}

Why don't you just use qsort() to do this? It is a standard C function that works fine with scalar arrays like this in C++. I use it all the time, if needed. It is fast, proven, efficient (if the array is not already sorted).

I think its better to use sort() from the algorithm lib.
C++11 has make the language more rubost and powerful.
I advice all the newbies to have a better grisp of the algorithm lib.

Most of your woes you are facing are all done. Algorithm lib must be your household name.

This article has been dead for over six months. Start a new discussion instead.