
program outcar
implicit none
real, dimension(:,:), allocatable :: coor, diff
character(len=128) :: line
integer :: num, ios, i
real :: frac
open(unit=12, file='OUTCARf', status='old')
open(unit=13, file='Result', status='new')
do
read(12,'(a)', iostat=ios) line
if (ios /= 0) exit
if (index(line, 'f/i') /= 0) then
read (12, '(a)') line
exit
end if
end do
num = 0
do
read (12, '(a)') line
! write(*,*) trim(line)
if (len_trim(line) == 0) exit
num = num + 1
end do
write (*,*) num
rewind 12
allocate(coor(num,3), diff(num,3))
write(*,*) 'please input the frac: '
read(*,*) frac
do
read(12,'(a)', iostat=ios) line
if (ios /= 0) exit
if (index(line, 'f/i') /= 0) then
read (12, '(a)') line
do i=1,num
read (12, *) coor(i,1:3), diff(i,1:3)
write(13,'(3F11.6)') coor(i,1:3) + diff(i,1:3) * frac
end do
write(13,*)
end if
end do
end program outcar
Fortran源自于“公式翻译”(英语:FormulaTranslation)的缩写,是一种编程语言。
它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。
随着FORTRAN语言版本的不断更新和变化,语言不兼容性问题日益突出,语言标准化工作被提上了日程。
1962年5月:美国标准化协会(简称ANSI)着手进行FORTRAN语言标准化的研究工作。
1966年:ANSI正式公布了两个标准文本:美国国家标准FORTRAN(ANSI X3.9-1966)和美国国家标准基本FORTRAN(ANSI X3.10-1966),前者相当于FORTRAN Ⅳ,后者相当于FORTRANⅡ。基本FORTRAN是美国国家标准FORTRAN的一个子集,从而实现了语言的向下兼容,初步解决了语言的兼容性问题。
很久不用fortran了 刚调试了一下 可以通过program main
implicit none
real(4)::a(10),b(8),c(5)
print*,"enter a(10):"
read*,a
print*,"enter b(8):"
read*,b
print*,"enter c(5):"
read*,c
call sort(a,10)
call sort(b,8)
call sort(c,5)
print*,"a:",a
print*,"b:",b
print*,"c:",c
end program main
subroutine sort(array,n)
implicit none
integer::n,i,j,k
real(4)::array(n)
do i=1,n
do j=i+1,n
if(array(i)>array(j))then
k=array(i)
array(i)=array(j)
array(j)=k
end if
end do
end do
end subroutine sort
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)