海洋系の観測データの解析を行っています。元のデータである”160909000000_refL.out”というファイルには、一行に日付や時刻、観測値などの16のデータが羅列しており、それらが縦に約90万行ほど並んでいます。それらをある条件を満たした時の行だけ抽出したいです。
今回は配列としてデータを読み込み、行数をカウント、条件に当てはまる配列だけを”160909000000_refL.outZ”へ書き込むという方法でデータの抽出を行いたいです。
プログラムは以下になります。
FORTRAN
1c refL 2 Program refL 3 Real z(5000) 4 Open (10,file='160909000000_refL.out',status='old') 5 Open (12,file='160909000000_refL.outZ',status='replace') 6 ii=0 7 100 Continue 8 ii=ii+1 9 Read (10,*,end=200) z(ii) 10 print *,z(10) 11 Go to 100 12 200 Continue 13 N=ii-1 14 do 300 i=1,N 15 if (z(10)==3 .and. z(11)==2) Then 16 print *,'hello2' 17 18 write(12,*) z(16) 19 print *,'hello3' 20 end if 21 300 print *,z(16) 22 Close (10) 23 Close (12) 24 STOP 25 END
コンパイルはできたのですが、その後の実行結果が以下のようになりました。
横一列に並んだ16のデータのうち一つ目のデータしか出力されていません。
これを16のデータすべて配列に組み込むにはどのようにすればよいのでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/13 08:29
2018/08/13 12:16