! John Kerl
! 1998

! Note 2007-05-04:  compiled with gfortran, both values are computed
! in double precision.

program macheps
	real r
	double precision d
	r = 1.0e0
	d = 1.0d0

	do while (r + 1.0 .gt. 1.0)
		r = 0.5 * r
	end do
	write (*, '(e14.7)') r

	do while (d + 1.0d0 .gt. 1.0d0)
		d = 0.5 * d
	end do
	write (*, '(d14.7)') d

end ! program macheps
