program delme integer*4 ,allocatable::z(:) real*8,allocatable::r(:) character*80 s if(iargc().ne.1)stop call getarg(1,s) read(s,*)io open(9,file='FILE.X') read(9,90)s 90 format(a80) read(9,*)nat allocate(r(3*nat),z(nat)) nn=0 do 1 i=1,nat read(9,*)z(i),(r(ix+3*(i-1)),ix=1,3) 1 if(z(i).ne.io)nn=nn+1 close(9) write(6,93)nat 93 format(i6,' atoms in FILE.X') if(nn.ne.nat)then open(9,file='FILE.X') write(9,90)s write(9,91)nn 91 format(i6) do 2 i=1,nat 2 if(z(i).ne.io)write(9,92)z(i),(r(ix+3*(i-1)),ix=1,3) 92 format(i4,3F12.6) close(9) write(6,94)nn 94 format(i6,' atoms left, FILE.X rewritten!') else write(9,95) 95 format('FILE.X unchanged') endif end