をパスカルの三角形で求めます。4バイト整数ではオーバーフローします。
ソース・プログラム
program PEuler015 implicit none integer, parameter :: ki = selected_int_kind(15), n = 20 integer :: i integer(ki), allocatable :: ipascal(:) ipascal = [1] do i = 1, 2 * n ipascal= [0_ki, ipascal] + [ipascal, 0_ki] end do print *, ipascal(n + 1) ! Pascal's triangle stop end program PEuler015
実行結果
137846528820
続行するには何かキーを押してください . . .