前提・実現したいこと
gfortranでif構文についての質問です
該当のソースコード
implicit real*8 (a-h, o-z) ! dimension p(1:10,1:10) ! dx =1 dy =1 ! resp = 0.0d0 if ( i <= 5 .and. i >= 3 .and. j <= 5 .and. j >=3 ) then do 190 i = 3,5 do 191 j = 3,5 x = 0 y = 0 P(i,j) =x + y 191 continue 190 continue else do 200 i = 1, 10 do 201 j = 1, 10 P(i,j) = 0 201 continue 200 continue end if ! open ( unit = 1, file = 'paaa-num.dat', status= 'unknown' ) rewind (1) do 600 j = 1, 10 do 700 i = 1, 10 x = dx*float( i - 1 ) y = dy*float( j - 1 ) write(1,*) x, y, p(i,j) 700 continue write(1,*) ' ' 600 continue close (1) ! stop end
質問の詳細
i,jが3~5の範囲ではP(i,j)を0
それ以外ではx+yで表したいのですが、うまく行きません。
全範囲でx+yの結果が出てしまいます。どうすればよいでしょうか?
回答1件
あなたの回答
tips
プレビュー