Fortranプログラムの作成とコンパイル・実行

ソースプログラムの作成

秀丸でソースプログラムを作成する

 デスクトップ上の秀丸のショートカットアイコンをダブルクリックして秀丸を起動する。新しいウィンドウが開くので、プログラムを入力する。

Fortranの最初の授業では、授業のホームページからサンプルプログラム(ファイル名 sample.f)を秀丸のウィンドウ内にコピーする(ダウンロードしてもよい)。

入力できたら、拡張子 .f を付けてセーブする。ここでは sample.f とする。


既存のファイルを秀丸で開く方法

  • 秀丸のアイコンの形をしたファイルは、そのファイルのアイコンをダブルクリックする。
  • ファイルのアイコンを秀丸のショートカットアイコン上へドラッグ・ドロップする。
  • ファイルのアイコンを右クリックして表示されるメニューの「プログラムから開く」または「送る」の中の秀丸を選ぶ。
  • 秀丸を起動してメニューの「ファイル」→「開く」を選択し「ファイルを開く」パネルで、「ファイルの場所」を指定し表示されたファイルの中から開きたいファイルを選択して「開く」ボタンを左クリックする。ファイルが表示されないときは、「ファイルの種類」の下向き矢印を左クリックして、表示されるファイルの種類の中から、「すべてのファイル(*.*)」を選ぶ。


プログラムのコンパイルと実行

開発ツールの起動

 「スタート」→「すべてのプログラム」→「Fujitsu Fortran&C Academic package V3.0L10」→「開発マネージャ」を選択する。

まず、コンパイル・実行したいファイル、ここでは sample.f を表示させる。Dのドライブ(V): のプルダウンメニューでプログラムのあるドライブを選ぶ。Bの領域に現在開かれているディレクトリ(フォルダ)が表示され、Aの領域にそのフォルダにあるファイルの名前が表示される。Cのファイルの種別で *.f や *.exe を指定するとその拡張子を持ったファイルのみが表示される。@のファイル(N): にはAの領域で選択(左クリック)されたファイルが表示される。


開発マネージャのメニューバーとツールバー

 ツールバーのボタンはその上のメニューバーの各メニューの内容に対応している。

各ボタンの上にマウスの矢印を持っていくとボタンの説明が表示される。ボタンは左から @メイクファイルの作成 A翻訳 B翻訳オプション Cメイクファイルを使用 D実行 E実行オプション Fエディタ Gデバッガ Hサンプラ…. と並んでいる。


ファイルの選択

 ソースファイル(〜.f)をコンパイル・リンクしたり、実行形式ファイル(〜.exe)を実行するには、対象となるファイルをEの選択済みのファイル(C)の領域に表示しておかなければならない。Aの領域からコンパイルするファイル(ここでは sample.f とする)のファイル名をダブルクリックするか、左クリックしてから「選択(S)」ボタンを左クリックする。sample.f がEの領域にフルパス(この例では c:\sawa\sample\sample.f)で表示される。また、「すべて選択(A)」ボタンを左クリックしてもよい。Aに表示されているファイルすべてがEの領域に表示される。

Eの領域から削除したいときは削除したいファイルの名前をダブルクリックするか、左クリックしてから「解除(D)」ボタンを左クリックする。


コンパイル・リンク

 Eの領域の c:\sawa\sample\sample.f を左クリックして選択して、コンパイルの対象とし、Aの翻訳ボタンをクリックする。



ビルダウィンドウ(コンパイルエラー)

 翻訳が開始されると、ビルダのウインドウが表示される。この例では8行目と12行目にコンパイルエラーがある。

赤字のエラーメッセージに「line8」と「line12」にエラーがあることが示されているので、秀丸で開いている sample.f の8行目と12行目の相当するエラーを見つける。

8行目        asum-0.0
       :
12行目        av=asum+/real(k)

8行目はFortranの文になっていないので、マイナス"-"をイコール"="に修正する。12行目はエラーが2つあるが、初めのエラーは5行目が正しくないことによるものである。2つ目のエラーは演算子が正しくないためで、プラス"+"を削除する。修正したらセーブし(上書き保存)、再度コンパイルする。セーブを忘れないこと。


ビルダウィンドウ(リンクエラー)

 再度、翻訳が開始されると、新しくビルダウインドウが表示される。今度はリンクエラーがある。

外部シンボル "c" が未解決というエラーメッセージが表示されている。エラーのある行は示されていないが、"c" が未解決であるとうエラーの内容が示されているので、秀丸で開いている sample.f のなかで、変数名、サブルーチン名、関数名などに "c" が使われていないか探してみる。この例では、10行目に配列名 "c" が使われている。

10行目          asum=asum+c(i)

10行目の配列要素 c(i) は a(i) の入力ミスである。"c" を "a" に修正してセーブし(上書き保存)、再度コンパイルする。ここでもセーブを忘れないこと。


ビルダウィンドウ(ビルド終了)

 再度、翻訳が開始されると、また、新しくビルダウインドウが表示しなおされる。エラーがなくなったので、ビルド終了と表示され、

開発マネージャのAの領域に、作成された実行形式ファイル sample.exe が表示される。



実行

 開発マネージャのAの領域に表示されている sample.exe をダブルクリックするか、左クリックしてから「選択(S)」ボタンを左クリックして、Eの領域に表示させる。Eの領域に表示されている c:\sawa\sample\sample.exe を選択してから、Dの実行ボタンを左クリックする。

実行結果を表示する cmd.exe のウィンドウが開かれる。

この例では
" 3つの実数の平均を求める "
" 実数を3つ、カンマまたはブランクで区切って入力する"
と表示してからデータの入力(実数値を3個)を待っている。これは、実行されているプログラムの記述によるものである。
ここで、実数(小数点つき)データを3個カンマまたは空白で区切って入力する。
この例では 15.0 54.0 3.0 を入力した。Enterキーを押すと実行結果(入力データとその平均)が表示される。

実行終了後、何かキーを押すと cmd.exe のウィンドウが閉じられる。

アルゴリズムの誤り

 プログラムのコンパイルエラーやリンクエラーがなくなり、実行結果が得られても、プログラムのアルゴリズムが誤っていると正しい結果が得られない。 計算方法が正しいか(計算式、計算の順序。結果の表示方法など)いろいろな方法で確かめること。