// "bubble sort" of an array of values
// See "quick sort" for a much more efficient algorithm
#include <iostream>
using namespace std;

int main ()
{
  const int n = 10; // number of elements in the array
  double v[n] = { 23.5, 32.8, 33.9, 31.3, 26.9,
                  21.3, 19.4, 23.7, 26.9, 31.6 };

  cout << "Before sorting:\n";
  for (int i=0; i<n; i++) cout << " " << v[i];
  cout << endl;

  // Perform Bubble Sort...
  bool changed;
  do{
     changed = false;
     for (int i=0; i<n-1; i++) {
        if ( v[i] > v[i+1] ){
           double swap = v[i];
              v[i] = v[i+1];
            v[i+1] = swap;
           changed = true;
        }
     }
  }while (changed);

  cout << "After sorting:\n";
  for (int i=0; i<n; i++) cout << " " << v[i];
  cout << endl;

  return 0;
}
