fortran66のブログ

fortran について書きます。

Problem 16

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
続行するには何かキーを押してください . . .