	program test_dheap_v2
c
c----------------------------------------------
c       test pour l'algorithme de tri heapsort
c       version avec lecture/ecriture dans des fichiers
c-----------------------------------------------

        implicit none
c
      integer n,nmax,i
      parameter(nmax=100)
      double precision  tab(nmax)
      integer itab(nmax)
      character*20  nom_fic_in, nom_fic_out
c
c---> allocation  des valeurs du tableau
c
      write(*,*)'Nom du fichier pour lire les donnees'
      read(*,*) nom_fic_in
c
      open(11,file=nom_fic_in)
      read(11,*) n
      write(*,*) n, ' valeurs a lire'
      do i=1,n
         read(11,*) tab(i)
         itab(i)=i
        write(*,*) tab(i)
      enddo
      close(11)
c
c
c---> tri par heapsort
c
      call dheap(tab,itab,n)
c
c---> affichage du tableau trie
c
       write(*,*)'==== Tableau trie========'
      do i=1,n
       write(*,111) ' iorig=',itab(i),' tab(i)=',tab(i)
      enddo      
c
111   format(A7,I3,A8,F12.8)
c
c---> ecriture du tableau trie
c
      write(*,*)'Nom du fichier pour ecrire les donnees'
      read(*,*) nom_fic_out
      open(11,file=nom_fic_out)
      do i=1,n
        write(11,112) itab(i),tab(i)
      enddo
c
112   format(I3,2X,F12.8)
c
      stop 
      end

           