2^1000を求めるのに手抜きして多倍長整数ライブラリ FMLIB を利用させていただきました。2^1000〜10^300なので300桁強の文字列を用意しました。
ソース・プログラム
program PEuler016 use fmzm implicit none character(len = 350) :: str integer :: k(350) type(im) :: m m = to_im(2)**1000 call im_form('i350', m, str) read(str, '(350i1.1)') k print *, sum(k) stop end program PEuler016
実行結果
1366
続行するには何かキーを押してください . . .