program main implicit none integer, parameter :: imin = 11 integer, parameter :: imax = 20 integer :: i integer, pointer :: array(:) allocate(array(imin:imax)) array(:) = 0 call put_data(imax-imin+1, array) do i = imin, imax print*, 'i:',i,', array(i):',array(i) enddo end program main