program example2 implicit none type coord real*8 :: x,y,z end type coord type (coord) :: p1,p2 real*8 :: d p1%x=1.d0 p1%y=2.d0 p1%z=0.d0 p2%x=3.d0 p2%y=0.d0 p2%z=1.d0 d=dsqrt( (p1%x - p2%x)**2 + (p1%y - p2%y)**2 + (p1%z - p2%z)**2 ) write(*,*) 'Distance between points p1 and p2 is', d stop end program example2