program Typ_Deklaration_eigene_Typen
  implicit none
  !integer, parameter :: dr = selected_real_kind(14) !7Bytes=56Binaerstellen
  integer, parameter :: dr = selected_real_kind(2*precision(1.0)) !2-fach
  real(kind=dr) :: x1, x2
  complex(kind=dr) :: c
  x1=1.0_dr/7.0_dr; x2=3.0_dr/7.0_dr
  c=dcmplx(x1,x2) !das d ist wichtig!  
  write(*,fmt=*) c ,x1, x2, c**2 !alles in eine Zeile
  !(0.14285714285714285,0.42857142857142855),  !c
  ! 0.14285714285714285,0.42857142857142855,   !x1, x2 
  !(-0.16326530612244897,0.12244897959183672)  !c**2
end program Typ_Deklaration_eigene_Typen
