#include <iostream>
#include <fstream>
#include <climits>

int main()
  {
   fstream f;
   f.open("liczby.bin",ios::in|ios::out|ios::binary);
   f.seekg(0,ios::end);
   unsigned N=f.tellg()/sizeof(double);
   for(unsigned k=N-1;k>0;--k)
     {
      f.seekg(0,ios::beg);
      double P;
      f.read(&P,sizeof(double));
      bool fl=true;
      for(unsigned i=0;i<k;++i)
        {
         double Q;
         f.read(&Q,sizeof(double));
         if(P>Q)
           {
            f.seekg(-(int)(sizeof(double)<<1),ios::cur);
            f.write(&Q,sizeof(double));
            f.write(&P,sizeof(double));
            fl=false;
           }
         else P=Q;
        }
      if(fl) break;
     }
   return(0);
  }
