program Typ_Deklaration_dim_Variable
  implicit none
  integer, dimension(4) :: i
  double precision, dimension(3,2) :: x
  character(len=6) :: ch1, ch2
  character(len=10), dimension(3) :: wort
 !-------------------------------------------------------
  wort=(/'langweilig','kurzweilig','zweiteilig'/)
  ch1=wort(2)(1:4)   !Zeichen 1 bis  4 der 2. Komponente
  ch2=wort(3)(5:10)  !Zeichen 5 bis 10 der 3. Komponente
  write(*,fmt=*) ch1,' ',ch2  ! kurz   teilig
  !-------------------------------------------------------
  i=(/-1,-2,-3,-4/)
  write(*,fmt=*) ' '  !leere Zeile
  write(*,fmt=*) i    !-1,  -2,  -3,  -4
  !-------------------------------------------------------
  x(1,1:2)=(/1.0d0,2.0d0/)
  x(2,1:2)=(/3.0d0,4.0d0/)
  x(3,1:2)=(/5.0d0,6.0d0/)
  !-------------------------------------------------------
  write(*,fmt=*) ' '  !leere Zeile
  write(*,fmt=*) x
  !1.,  3.,  5.,  2.,  4.,  6. !spaltenweise, ohne Zeilenumbruch
  !-------------------------------------------------------
  write(*,fmt=*) ' '  !leere Zeile
  write(*,fmt="(2(f4.2,' '))") x(1,1:2)
  write(*,fmt="(2(f4.2,' '))") x(2,1:) !von 1 bis zum Ende
  write(*,fmt="(2(f4.2,' '))") x(3,:2) !vom Anfang bis 2
  !1.00 2.00 
  !3.00 4.00 
  !5.00 6.00     !gibt Originalmatrix
  !-------------------------------------------------------
  write(*,fmt=*) ' '  !leere Zeile
  write(*,fmt="(2(f4.2,' '))") transpose(x)
  !1.00 2.00 
  !3.00 4.00 
  !5.00 6.00     !gibt Originalmatrix
end program Typ_Deklaration_dim_Variable
