program main call adam ( ) return end subroutine adam ( ) integer, parameter :: rk = kind ( 1.0D+00 ) integer a real b(3) real ( kind = rk ) c(3,2) character ( len = 12 ) d integer e(2,4,2) complex f a = 100 b = (/ 2.1, 3.2, 4.3 /) c = reshape ( (/ 11.0, 21.0, 31.0, 12.0, 22.0, 32.0 /), (/3,2/) ) d = 'Hippopotamus' do k = 1, 2 do j = 1, 4 do i = 1, 2 e(i,j,k) = 100 * i + 10 * j + k end do end do end do f = cmplx ( 5.0, -8.0 ) return end