関数と引数の試験問題への適用
本番では関数呼出しが式の途中に入り、複数回呼ばれたり、関数から別関数を呼んだりする。呼出しごとに引数値と戻り値を小さく計算する。
この単元で学ぶこと
- 呼出しトレースの意味と役割を説明できる
- ネスト呼出しの意味と役割を説明できる
- 複数回呼出しの意味と役割を説明できる
- 複数・ネスト関数呼出しを入力→戻り値へ分解して評価できる
本文解説
関数をブラックボックスのまま暗算せず、各呼出しの入力と出力を欄外へ書く。ネストした呼出しは内側から評価する。
呼出しトレース 関数呼出しごとの入力と戻り値を記録する。 同じ関数でも引数が違えば結果が違う。
ネスト呼出し 関数の引数に別の関数呼出しを含む。 通常は内側の戻り値から評価する。
複数回呼出し 同一関数を異なる入力で何度も使う。 各呼出しは個別に評価する。
局所計算 関数内の仮引数や局所変数で計算する。 呼出しごとの状態を混ぜない。
戻り値利用 戻り値を代入・比較・別関数引数に使う。 戻り値の型や値に応じて後続処理が決まる。
最も内側の呼出しから戻り値を求め、式へ置き換える。
double(x)=2x、inc(x)=x+1ならdouble(inc(3))はinc(3)=4→double(4)=8。
図解
重要ポイント
- 呼出しトレース: 関数呼出しごとの入力と戻り値を記録する。
- ネスト呼出し: 関数の引数に別の関数呼出しを含む。
- 複数回呼出し: 同一関数を異なる入力で何度も使う。
- 局所計算: 関数内の仮引数や局所変数で計算する。
- 関数呼出しを一つずつ値に置き換えると複雑な式も単純になる。
間違えやすい点
- 別呼出しの仮引数状態を混ぜない。
- ネスト呼出しを外側から先に計算しない。
- 戻り値を受け取らない呼出しと式中の呼出しを混同しない。
用語解説
- 呼出しトレース
- 関数呼出しごとの入力と戻り値を記録する。
- ネスト呼出し
- 関数の引数に別の関数呼出しを含む。
- 複数回呼出し
- 同一関数を異なる入力で何度も使う。
- 局所計算
- 関数内の仮引数や局所変数で計算する。
- 戻り値利用
- 戻り値を代入・比較・別関数引数に使う。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。