fortran66のブログ

fortran について書きます。

sine and cosine curves

昔よく見た文字グラフです。特に意味なしw
Fortran2008 では、万能 G 型の Format がさらに拡張されて g0 によってあらゆる型を、よきに計らってくれます。また繰り返し指定子に * を使うことで無限反復となります。

実行結果

ソース・コード

program test
  implicit none
  real, parameter :: pi = 4 * atan(1.0)
  integer :: i, n
  character(72) :: fmt
  n = 50
  print *, '                   sine and cosine curves'
  do i = 0, n
    write(fmt, '(*(g0))') '(t31, "|", t', 31 + int(30 * sin(2 * pi * i / n)), ', "*"', &
                                   ', t', 31 + int(30 * cos(2 * pi * i / n)), ', "*"', ')'
    print fmt 
  end do
  stop
end program test