24 lines
360 B
Fortran
24 lines
360 B
Fortran
subroutine packname(name,len,n1,n2)
|
|
|
|
character*9 name
|
|
real*8 dn
|
|
|
|
dn=0
|
|
do i=1,len
|
|
n=ichar(name(i:i))
|
|
if(n.ge.97 .and. n.le.122) n=n-32
|
|
dn=27*dn + n-64
|
|
enddo
|
|
if(len.lt.9) then
|
|
do i=len+1,9
|
|
dn=27*dn
|
|
enddo
|
|
endif
|
|
|
|
n2=mod(dn,32768.d0)
|
|
dn=dn/32768.d0
|
|
n1=dn
|
|
|
|
return
|
|
end subroutine packname
|