program main
use iso_fortran_env
implicit none
real(real64), allocatable :: a(:,:)
integer, parameter :: ROWS = 3, COLS = 5
integer r, c
allocate( a( ROWS, COLS ) )
a = reshape( [ ( ( 10 * r + c, r = 0, ROWS - 1 ), c = 0, COLS - 1 ) ], [ ROWS, COLS ] )
do r = 1, ROWS
print "( *( 1x, f8.1 ) )", a(r,:)
end do
end program main