مشکل در زبان برنامه نوسی فرترن

Asghar_

عضو جدید
سلام دوستان

من یه کدی در مورد خواندن داده ها از یک فایل رو نوشتم که دچار مشکل و سرددرگمی شدم...اصلا من برای نوشتن این کد باید از قبل یه فایل داده رو مشخص کنم؟مثلا یه سری ارقامو داخل یه فایل txt وارد کنم و سپس کد را اجرا کنم؟؟؟

ممنون میشم راهنمایی بفرمایید ...با فرترن 95 نوشتم.

کد:
program reade
implicit none
character(len=4)::filename
integer::nvals=0
integer::sd
real::value
write(*,*)'please inter input file name'
read(*,*)filename
write(*,1000)filename
1000 format('','the input file name:',A)

open(unit=3,file=filename,status='old',action='read',iostat=sd)

openif:if(sd==0) then
readloop:do
       read(3,*,iostat=sd)value
       if(sd/=0) exit
         nvals=nvals+1
         write(*,1010)nvals,value
         1010 format('','line',i6,':value=',f10.4)
         end do readloop


readif:if(sd>0) then
write(*,1020)nvals+1
1020 format('0','an error occurred reading line',i6)
else
  write(*,1030)nvals
  1030 format('0','end of file reached.there were',i6,'value in the file.')

  end if readif

else openif

  write(*,1040)sd
  1040 format('','error opening file:iostat=',i6)
  end if openif

  close(unit=3)

end program reade
 

Asghar_

عضو جدید
سلام دوستان

یه کد نوشتم میخواستم که یه ماتریس 3*4 رو بخونم.....یعنی از یه فایل داده،آرایه دوبعدی(ماتریس) دوبعدی رو بخونم....ولی نمیدونم چرا وقتی ارایه رو میخونه درست خونده نمیشه و وقتی میخوام یه عضوی از آرایه رو رایت بگیرم اشتباه خروجی میده...ممنون میشم که راهنمایی کنین

با تشکر

کد:
program ee
implicit none
integer::i
integer::j
integer,dimension(4,3)::istat          
open(7,file='initial.txt',status='old',action='read')        !Should be equal to the numbers of datas with numbers elements arrays......12 elements there is
read(7,*)istat
write(*,*)istat
write(*,*)istat(3,1)
!or:
!read(7,*)((istat(i,j),j=1,3),i=1,4)
!write(*,*)((istat(i,j),j=1,3),i=1,4)
end program ee

اینم لینک دانلود فایل فرترن و فایل داده ها...فایل داده ها رو به هر طریقی ستونی و ماتریسی در آورد ولی بازم درست نشد.

http://kanakh.com/upload/uploads/13957393441.rar
 
بالا