1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| program y
implicit none
integer :: nmin, nmax, nblignes
double precision , dimension (:) , allocatable :: tab, donnees
integer :: kk,jj
double precision :: valeur ! donnees, lue dans le fichier solution_1_iter.txt
nmin=101
nmax=999
nblignes=899 ! nombre de lignes du fichier
allocate (tab(nmin:nmax))
allocate (donnees(1:nblignes))
open (unit = 31,file = 'recup_T.data', status='unknown')
call lecture (nmin,nmax,nblignes,tab,donnees)
write(31,'(f18.14)') (tab(kk),kk=101,999)
end program y
subroutine lecture (nmin,nmax,nblignes,tab,donnees)
implicit none
integer , intent(in) :: nmin,nmax,nblignes
double precision, intent(out) ,dimension (1:nblignes) :: donnees
double precision, intent(out) ,dimension (nmin:nmax) :: tab
integer :: kk,jj
double precision :: valeur ! donnees, lue dans le fichier solution_1_iter.txt
open (40,file="Solution_1_iter.txt") ! on ouvre le fichier
kk=nmin !on commence par Neps+1
do jj=1,nblignes
! on lit une ligne du fichier
read(40,'(f18.14)') valeur
! on stocke la donnee lue dans la case correspondante du tableau
donnees(jj)=valeur
if (kk.Le.nmax)then
tab(kk) = donnees(jj)
end if
kk=kk+1
end do
end subroutine lecture |
Partager