FC2ブログ
HOME   »  fortan
RSSフィード iGoogleに追加 MyYahooに追加
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
gfortran
○ 改行がうまくいってないよ

Error: Unclassifiable statement at (1)
In file dif.f:42

+b
1
Error: Unclassifiable statement at (1)

ソース=次の行へ続く記号が無い
a=c
+b
正しいソース
a=c
& +b
スポンサーサイト
この記事を閲覧するにはパスワードが必要です
パスワード入力
文字型の変数

character (変数名)*(文字の長さ)
character (変数名)(文字の長さ)

ex.
character a*7
character a(7)
○ファイル読み込み
●外部ファイルの読み込み(プログラム内)
open(番号,file='(ファイルの名前)')
→これでファイルを開くことになる
もし外部ファイルがバイナリーの場合、
open(番号,file='(ファイルの名前)',access='direct',recl=(レコード長さ))
とすればよい。
ファイルを閉じる場合、
close(番号)
とすればよい。

●外部ファイルからの変数への入力(コマンドラインから)
./test < data_file
と入力することで作ったプログラム(test)において、外部ファイル(data_file)から変数を入力できる

●namelist
namelist /(リスト名)/ 変数(複数可能)
入力ファイルで変数に値を代入することができる
入力ファイルでは
&(リスト名) 変数=値,…
と指定してあげればok

・program
namelist /list/ a,b,c
read (*,list)


・input_file
&list a=5,b=20,c=7

といった感じでプログラム内でリンクさせることができる


●読み込み方の指定
read,write,print -> データ転送入出力文

read '(7x,i4)',an(0)
->データファイルの読み込み位置から右に7文字進んで、an(0)に4桁の整数を入力

○ファイル書き出し
基本的にwrite文を使う
バイナリ→アスキーのやり方は以下。

integer j
integer*4 i(12)
open(15,file='binary.dat',access='direct',recl=4) !バイナリファイルを開く
open(25,file='ascii.dat') !書き出しファイルを作成
do j=1,12
read(15,rec=j) i(j) !バイナリファイルからの読み出し
write(25,*) i(j) ! 書き出しファイルへ出力
end do

といった感じ。

配列:名前とその大きさは必ず指定する必要がある

指定例
① 変数の型(realやintegerなど), dimension(添え字の下限 : 添え字の上限) :: 配列名

② 変数の型 :: 配列名(添え字下限 : 添え字上限)

③ dimension(添え字下限 : 添え字上限) 配列名

添え字の上限、下限は範囲を表す。
配列名は複数指定でき、「,」で区切る。
基本的には定数で指定するが、変数で指定することができる。
そのときはちゃんとした形式がある。

例)添え字が5から150までの整数値の配列aの宣言例
integer, dimension(5:150)::a
integer :: a(5:150)
dimension(5,150) a

○ DOを使った配列への値入力
(配列名)=(/DO文形式/)

例)
a=(/k, k=11,20/)
→a= 11 12 13 14 15 16 17 18 19 20

b=(/l,l=15,42,3/)
→b= 15 18 21 24 27 30 33 36 39 42

CALENDaR 12345678910111213141516171819202122232425262728293031
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。