関数のグラフを描く

本日の授業では、以下の内容を解説します。

Pythonの教科書の使用

1. Python言語の関数

1.1 Python言語の関数とは

関数は「データを受け取って、処理を行い、結果を返す」という機能を持っている仕組みです。

例えば、pow(x,n) 関数は与えられる変数 xとnに対して、$x^n$の値を計算してくれます。この例では、$x,n$は「引数」、関数の返す値$x^n$のことを「返り値」(または「戻り値」)と呼びます。

関数を利用すること、プログラムの言語に予め用意される計算法を容易に利用できます。また、関数を使うと、OSの機能も使えます。たとえば、print()関数を使って、与えられる変数の値を画面に出力できます。

1.2 Python関数の定義

Pythonの関数定義は以下の構文を使います。(def: define)

def 関数名(引数1, 引数2):
  関数の中の処理
  return 返り値

構文に関する説明

1.3 関数定義の例

与えられる変数$x$の3乗を返す関数を作ってみます。

演習1

1.1 与えられる引数x,yに対して、10*x+yを返す関数を作りなさい。関数名を「my_add」とします。また、定義される関数に対して、my_add(5,3), my_add(9,1)で呼び出してみてください。

1.2 与えられる引数nに対して、$1$から$n$までの整数の和を計算して、その値を出力する関数 my_sum(n) を作成してください。特に、返り値が不要です。

2. 関数のグラフを描く

関数$f(x)$のグラフは曲線$y=f(x)$上の点列を使って表現できます。以下の例では、区間[0,1]における指数関数$exp(x)$のグラフの描き方を説明します。

まず、区間[0,1]における等分割の点列x_listを作ります。等分割の間隔をh=0.01とします。

次に、曲線$y=\exp(x)$上の点のリストを作成するために、x_listに対する y_listを作成します。

最後に、x_list,y_listによって、折れ線を描きます。

上記のコードをまとめて、グラフを作成する関数を定義します。

演習2 (レポート課題)

関数 $f(x)=\sqrt{x}+1$のグラフ作成を考えます。

演習2.1

与えられる引数xに対して、$\sqrt{x}+1$の値を返すPythonの関数my_f(x)を定義します。

演習2.2

演習2.3 (オプション)

余裕のある方は、任意に指定される区間[a,b]における関数f(x)のグラフを作成するPythonの関数draw_f(a,b)を作ってください。