Section Arrays: Subarrays#
Adapted from: gjbex/Fortran-MOOC
This program demonstrates array slicing in Fortran.#
program subarrays
implicit none
integer :: i
integer, dimension(10) :: A = [ (i, i = 1, 10) ]
character(len=10), parameter :: FMT = '(10I3)'
print FMT, A
print FMT, A(4:7)
print FMT, A(:7)
print FMT, A(4:)
print FMT, A(4:7:2)
print FMT, A(4::2)
print FMT, A(:7:2)
print FMT, A(7:4:-1)
end program subarrays
The above program is compiled and run using Fortran Package Manager (fpm):
Build the Program using FPM (Fortran Package Manager)#
import os
root_dir = os.getcwd()
code_dir = root_dir + "/" + "Fortran_Code/Section_Arrays_Subarrays"
os.chdir(code_dir)
build_status = os.system("fpm build 2>/dev/null")
Run the Program using FPM (Fortran Package Manager)#
exec_status = os.system("fpm run 2>/dev/null")
1 2 3 4 5 6 7 8 9 10
4 5 6 7
1 2 3 4 5 6 7
4 5 6 7 8 9 10
4 6
4 6 8 10
1 3 5 7
7 6 5 4