2021.05.26 繰り返し(2),桁落ち
- 台形公式を用いて,定積分∫x(x-1)(x-2)(xが0から1)の近似値を求めるプログラムを作成する。n=100,n=1000,n=10000の時の定積分の近似解をそれぞれ求める。
- 二次方程式 Ax2+Bx+C=0 を根の公式を使って,4ACや判別式Dが極小値で限りなく0に近い場合でも,解を求めることができようにすること。
2021.05.19 繰り返し
- フィボナッチ数列を用いて,フィボナッチ数,ならびに黄金比を求めるプログラムを作成する。n=10,n=25のときのフィボナッチ数,黄金比を計算する。
- 台形公式を用いて,定積分∫x(x-1)(x-2)(xが0から1)の近似値を求めるプログラムを作成する。n=100,n=1000,n=10000の時の定積分の近似解をそれぞれ求める。
2021.05.12 分岐処理
- 二次方程式 Ax2+Bx+C=0 を根の公式を使って求める。実根がある場合には,2つの実根を表示し,実根がない場合には,判別式の値と実根がないことを表示する。
- 名古屋市上下水道局の水道料金を計算する。水道メーターの前回の指示値と今回の指示値を入力し,今回の使用水量と水道料金を計算し,使用水量と水道料金(小数点以下は切り捨て)を表示する。
Tips
Case文を用いる場合,select case (場合式)において,場合式が実数REALではコンパイルできない。水道水量Amountを場合式に用いる場合,select case (Amount)であれば,Amountは整数で定義しておくことが必要。
2021.04.28 変数,入出力
- 3.0 + 8 / 5 と 3 + 8.0 / 5 との違いをプログラムを作成し,実行して確認すること。提出物は実行結果イメージ,ファイル名はkadai03_1.png
- 摂氏温度を対応する華氏温度に変換するプログラムを作成する。摂氏温度を入力し,華氏温度を表示すること。0℃(32℉),100℃(212℉)でプログラムが正しいことを確認すること。提出物はプログラムファイル,ファイル名はkadai03_2.f90
Tips
整数と整数の計算は整数となる。したがって,8/5は1.6ではなく,1となる。なので,摂氏温度から華氏温度に変換する場合にも,9/5*celsius+32では,期待通りの結果とならない。
2021.04.21 プログラムの実行
- sample0421.f90を実行する。提出物は実行結果イメージ,ファイル名はkadai02_1.png
- PRINT文を用いて,自分の学籍番号,氏名(ローマ字)を表示するプログラムを作成,実行する。提出物はプログラムファイル,ファイル名はkadai02_2.f90
2021.04.14 gfortran実行環境の整備
Windows
- gfortran – the GNU Fortran complier, part of GCCのwebsiteにアクセスし,DownloadからBinaries for Windows, Linux, MacOS and much more!のBinariesをクリックする。
- TDM GCCをクリックし,TDM GCCのwebsiteからgfortranをインストールする。tdm64-gcc-9.2.0.exeを保存し,実行する。インストール時に,「New Installation:Choose Components」の時に,gcc/fortran に必ずチェックをつけてインストールする。
macOS
- まず,Xcodeをインストールする。もし,macOSのバージョンにより最新のXcodeがインストールできない場合には,Apple Developerにサインインすることで,macOSのバージョンに合うXcodeを見つけることができる。
- command line toolsをインストールする。
- gfortran – the GNU Fortran complier, part of GCCのwebsiteにアクセスし,DownloadからBinaries for Windows, Linux, MacOS and much more!のBinariesをクリックする。
- macOSにあるhttps://github.com/fxcoudert/gfortran-for-macOS/releasesから自分のmacOSのバージョンのdmgファイルをダウンロードし,インストールする。
gfortranの実行環境が構築できない場合
- ideone.comでfortranが実行できます。本講義の課題は,ideoneで実行できることを確認しています。
本講義の概要
担当:平山 修久(減災連携研究センター)
講義時間:前期・水曜3限 13時00分~14時30分
教室:Zoom
課題の提出方法:NUCT
本演習の目的
- プログラムのアルゴリズムを理解する
- Fortranの文法を理解し,プログラムの読み書きができる
- 与えられた課題を解くためのアルゴリズムを考えることができる
- Fortranによるコンピューターでの数値解析(方程式,モンテカルロ法)ができる