第12章 関数について

12.5 練習問題

本章で習った内容を元に練習問題を解いてください。

問1 次の設問①~⑤について○か×で答えなさい。

設問

① 関数はPythonが事前に用意しているものしか利用できない。
② 関数に渡す情報を引数、関数から返ってくる情報を戻り値という。
③ 関数内で利用(宣言)した変数は、呼び出し元でも利用することができる。
④ 関数を引数に指定することができる

問2 次の仕様を持つ関数を 第12章.ipynbの練習問題の問2に定義しなさい。

関数仕様1

関数名:calcTriangle
引数:base(底辺)、height(高さ)
戻り値:area(面積)
内容:引数に底辺と高さの数値を受け取り、三角形の面積を計算してその結果を戻り値で返します。
ヒント:三角形の面積は「底辺*高さ/2」で求められます。

関数仕様2

関数名 :calcSum
引数 :numbers(数値が複数格納された配列)
戻り値 :sum(合計)
内容 :引数で受け取った数値配列の値を全て合計した結果を戻り値で返します。
ヒント :引数の配列を順次取り出すにはfor文を利用して行います。

関数仕様3

関数名:scoreCheck
引数:score(点数)
戻り値:なし
内容:引数で受け取った点数に応じた評価を画面に出力します。
0~59 :出力メッセージ「かなり努力が必要です!」
60~69 :出力メッセージ「もっと頑張りましょう!」
70~79 :出力メッセージ「頑張りましょう!」
80~89 :出力メッセージ「良くできました!」
90~100:出力メッセージ「大変良くできました!」
その他 :出力メッセージ「0~100の数値で入力してください!」
ヒント:引数の値のチェックを条件分岐文を使って行い、print文で該当のメッセージを出力します。

問3 次のソースコード「第12章.ipynbの練習問題の問3」の実行結果について以下の設問に答えなさい。

ソース・フォルダ:/Desktop/Python入門テキスト
ファイル名:第12章.ipynb
アクセスURL:http://localhost:8888/notebooks/Desktop/Python入門テキスト/第12章.ipynb

➢ 第12章.ipynb

	#関数の定義
	def addfunc():
		print('関数開始')
		def add(num1,num2):
			print(num1,':',num2)
			return num1 + num2

		return add

	ans = addfunc()
	ans2 = ans(2,4)
	print(ans2)
	

出力結果

	関数開始
	2 : 4
	6
	
設問 ソースコードの出力結果は上記の通りです。各出力結果が表示されるプログラムは何行目に該当するか答えなさい

①「関数開始」が出力されるのは何行目ですか?
(ア) 「10: ans = addfunc()」、(イ) 「11: ans2 = ans(2,4)」、(ウ)「12: print(ans2)」
②「2 : 4」が出力されるのは何行目ですか?
(ア) 「10: ans = addfunc()」、(イ) 「11: ans2 = ans(2,4)」、(ウ)「12: print(ans2)」
③「6」が出力されるのは何行目ですか?
(ア) 「10: ans = addfunc()」、(イ) 「11: ans2 = ans(2,4)」、(ウ)「12: print(ans2)」

NEXT>> 12.6 練習問題 解答