プログラミングの基礎

数値計算及び実習
第8回 プログラミングの基礎(6)
講義内容
1. 主プログラムと副プログラム
・関数副プログラム
・サブルーチン
主プログラムと副プログラム
プログラム → 多くの命令(処理)の集まり
一つのプログラムは、
・幹となるプログラム(主プログラム)
・個々の処理を担当するプログラム
(副プログラム)
に分割することができる。
・同じ処理を何回も行う場合に便利
・間違いが少なくなる
主プログラムと副プログラム(2)
主プログラム
主プログラムのみ
処理1 (ex.入力)
処理2 (ex.計算1)
処理3 (ex.計算2)
処理4 (ex.出力)
副プロ1を呼ぶ
副プロ2を呼ぶ
副プロ3を呼ぶ
副プロ4を呼ぶ
副プログラム
副プロ1: 入力
副プロ2: 計算1
副プロ3: 計算2
副プロ4: 出力
副プログラムの種類
関数副プログラム(FUNCTION)
Y= f (X1, X2, X3 …)
f ( ) : 関数名
X1, X2, X3, … : 引数
サブルーチン(SUBROUTINE)
CALL f (X1, X2, X3 …,Y)
f ( ) : サブルーチン名
X1, X2, X3, …, Y : 引数
関数副プログラムの内容
ex. 2つの実数X,Yを与え、その和を計算する
関数副プログラム:CALC( )
FUNCTION
CALC(X,Y)
← 関数の定義
関数名 仮引数
REAL X,Y
CALC=X+Y
RETURN
END
← 仮引数の型
← 処理内容
← mainに帰る
← 関数終わり
※値を返す=計算結果を主プログラムへ
※関数の型は「暗黙の型宣言」
関数副プログラムの使い方
ex. 主プログラムの中でCALC( )を使用
REAL A,B,C
A=10.0
B=5.0
C=CALC(A,B)
← 関数呼び出し
関数名 実引数
仮引数と実引数
FUNCTION CALC(X,Y)
↑↑
C = CALC(A,B)
サブルーチンの内容
ex. 2つの実数X,Yを与え、その和を計算し、その結果
をZとするサブルーチン
SUBROUTINE CALC(X,Y,Z)
← 定義
サブルーチン名 仮引数
REAL X,Y,Z
Z=X+Y
RETURN
END
← 仮引数の型
← 処理内容
← mainに帰る
← 終わり
サブルーチンの使い方
ex. 主プログラムの中でCALC( )を使用
REAL A,B,C
A=10.0
B=5.0
CALL CALC(A,B,C)
サブルーチン名
実引数
← サブルーチン
呼び出し
仮引数と実引数 SUBROUTINE CALC(X,Y,Z)
↑↑↓
CALL CALC(A,B,C)