1 コンピュータ言語処理系を用いた関数教育

(高等学校2年生 数学U)

2 学習の意図と指導のねらい

 テクノロジーを活用した数学教育は,現在世界的に研究・実践が進んでいる1,2,3,4。関数のグラフの指導に限っても,それぞれの利点を強調しながら多種多様な実践報告が為されている。また高等学校の関数の指導では,高次の多項式や超越関数などを扱うために,数値計算やグラフの描画でのテクノロジーの活用は,学習者を大きく支援してくれる。しかし,有用なソフトウェアは概して高価であり,また,廉価とうたっているものであっても,一教室分の40本を用意するとなると結構な額になり,あるソフトウェアの教育効果を認めた教師が,そのソフトウェアを利用して学習指導したいと考えても,なかなか実現されずに終わることは少なくない。本稿ではそのような便利なソフトが無くとも,汎用の処理系を利用することで,高等学校での関数教育の充実が図れた指導実践を報告する。

3 利用ソフトの概要

 本稿では,Turbo Pascal ver.5.5(MS-DOS版,NEC:PC-98用)を用いたが,xy-座標系が設定でき,その中のいずれの位置にも点がプロットできる処理系であれば,Basicでも C でも LOGO でも同様の指導が可能である。また LOTUS1-2-3 のような表計算ソフトであっても「XYグラフ機能」を利用することで同様の指導が可能になる。ただ実際の指導では,学習者がプログラミングに戸惑わないように,ある程度ブロック化されたライブラリを用意することは大切ではないかと考える。本学習でも Turtle Graphics のライブラリ(自作)を用意し,学習者にはそのライブラリの中でプログラミングを行わせた。

4 実践事例 「三角関数の合成 」

1) 処理系の初期化
2) 座標系の定義
3) 関数の定義
4) 定義域の設定
5) グラフの描画
図1プログラムの構成
本章では指導計画を提示していないが,それは本学習を行う時点での学習者の既習内容と習熟の問題,及び処理系を含めたコンピュータの習熟の度合い,更に一回に指導する時間,つまり50分の授業単位の中で行うのか100分の授業単位で行うのかなどにより,授業構成を変える必要があるからである。
 さて事前準備として,関数を定義し,その関数のグラフを描画するプログラムを作る。プログラムの構成は図1の通りである。

(1) 学習のテーマ

y = m・sin x + n・cos x = k・sin( x + t ) ……… 1)
において,m, n, k, t の関係を調べる。
 三角関数で表された2つの単項式は1つの単項式で表すことができる。つまり三角関数は合成が可能である。このことをコンピュータ上での実験観察を通して学習させる。

(2) 第1段階

図2 係数の探索と決定
f1(x)= m・sin x + n・cos x
f2(x)= k・sin(x+t)
 において,m=1,n=1 のときf1(x)=f2(x)となるような,k, t を調べる。
 まず,y=f1(x)を描画してあるxy-平面上に,k,tに適当に値を入れてy=f2(x)を描画する。次に,kの値を決定するためにひとまずtの値を固定し(図中ではt=1),kの値を色々変化させて振幅が等しくなるまでy=f2(x)を何度も描画する。kが決定されたならば,同じようにtの値を探索する。この結果,k=1.41,t=0.785(rad)を得た(尚,弧度法については通常2年次では学習しないので,この場合にはプログラム中で予めθ:=180・t/πのように単位を変換しておくとよい)。またこのとき,k,tの値の変化とグラフの変化については,よく観察させ,因果関係について考察させる指導は大切である。この段階で1.41≒√2は想像できても,0.785(若しくは単位変換してθ=45.0)についての見当は難しい。

(3) 第2段階

表1 実験記録シート
 m,n の値を色々変えてみながら1) を繰り返す。そして右の表1を完成しながら,m,nとk,tの値関係を考察する。右の表では太字が既知の値で,細字が実験から得られた数値である。表から予想されることは,
ht-1: m = n のとき t の値が等しい
ht-2: m = n のとき m と kは正比例する
である。そしてm=3,n=4のときk=5となっていることから
ht-3: m2+ n2= k2となる
という予想が立つ。そこでm,n が他の場合にも成り立つかどうか,確認のため計算すると以下のようになった。

よってどうやらht-3は正しそうであることが分かる。また m=n のとき √2m2h = m√2から,ht-3はhtー2を含んでいることが分かる。
またt=1.11のとき m=1,n=2 の組と m=2,n=4 の組がある。これとht-1を合わせると
ht-4: mとnの比 m/n が等しければ,tの値は変わらない
との予想が立つ。

(4) 第3段階

   (2) の仮説ht-3をもとに1) 式を考察してみる。
   1) の右辺 = k・sin(x+t)
            = √(m2+n2)・sin(x+t)  
            = √(m2+n2)・sin x ・cos t + √(m2+n2)・cos x ・sin t
            = √(m2+n2)・cos t ・sin x + √(m2+n2)・sin t ・cos x ……… 2)
      ∴ m = √(m2+n2)・cos t, n = √(m2+n2)・sin
                    m           n         
   即ち cos t = ───── ,sin t = ───── …… (3
                √(m2+n2)             √(m2+n2)
つまり m, n, t は,図3のような関係にあることが分かる。ここで(3)の実験結果を見直すと,確かにどの場合でもこの関係にあることが確かめられる。またこの場合,ht-4は当然成り立つことが分かる。よってht-4の仮説が正しいとすれば,これまでの実験結果はすべてこの仮説に帰着することができる。
図3 m,n,tの関

(5) 最終段階

 これまでの流れを逆にたどると,まず加法定理から2) の恒等関係が成り立つ。このとき3)を満足するtを考えると,このtは1)を満足するtであることに他ならない。よって1)が成立する。因みに,cos x = sin(x+π/2) であるので,y = k・cos(x+ t+π/2)と表すこともできる。

(6) 利用したプログラムのリスト(抜粋)

program Show_Functions(input,output);
(* 坂本 正彦 : 導関数の描画 *)
  uses Crt, graph, Turtle1;
    var 省略
  function fx1( x : real ) : real;
    begin
      fx1 := m*sin(x) + n*cos(x);
    end;
  function fx2( x : real ) : real;
    begin
      fx2 := k*sin(x+t);
    end ;
  procedure Shokichi; 省略
  procedure Ten; 省略
  procedure Draw_Function1;
    var i, x, y : real;
      begin
        i := -x_range;
        y := 0; end.
        while i <= x_range do
          begin
            x := i; y := fx1(x);
            if abs(y)<= y_range then
          Ten( round(200*x/x_range),
          round(200*y/y_range),col);
        i := i + sg_d;
          end;
      end;
  procedure Draw_Function2; 省略
  procedure Zahyojiku; 省略
    begin (* MainProgram *)
      Initturtle;
      Shokichi; Zahyojiku;
      m := 3; n := 4;
      col := blue; Draw_Function1;
      k := 5; t := 0.93;
      col := red; Draw_Function2;
  end.

5 まとめ

 冒頭で述べたように,テクノロジーの教育利用に関する研究・実践は伸張期に入っている。そしてそれらの成果は我々の日常的な教育活動に様々な影響を及ぼしてきている。より進化したハードウエアは,それまで予想もしなかった教育活動を提案する。現実に技術の進歩が教育内容の変更を余儀なくさせる場面は少なくない。だから新しい教育を目指す場合に,新しい教育環境を求める教師の姿は今後とも至る所で見られるに違いない。現実の問題解決を先進性にもとめること自体は決して悪いことではないからだ。しかし我々現場の教師は,常に先進的な技術の恩恵に浸れるというわけではない。寧ろ多少古びてしまった既存の資産を捨てるわけにはいかず,それらとのつき合いの中で新たな教育を創造して行かなくてはならない現実がある。
 ここに紹介した事例の基本概念は,1970年代に既に実施されていたものである。コンピュータに数値計算させ,その結果をモニター上に映し出すことで学習支援を図ろうというだけのことであるからだ。ここではマルチメディアパソコンも必要無ければ,インターネットどころかネットワークすら不要である。スタンドアロンのMS-DOSマシンと処理系があれば事足りる。しかし,学習の構成は決して古びたものではないと自負している5。公式を丸暗記する学習でもなければ,極端に抽象的な演繹を理解しなくてはならないことも要求していない。学習者は必要に応じてコンピュータを駆使しながら,経験的に三角関数の多項式が単項式で表現できることを理解していく。実験を伴う探求活動は,問題となる事柄が何故生ずるのかということを究明していくだけのことであるが,その活動の中では,それぞれの学習者個々の既習内容が前提となり,活動の方法や形態は個別に形成される。この個に応じた学習を保証することは現在の大きな課題である。個に応じた学習を指導するとき,学習者によっては手に余る計算が必要になる場合もあるだろうし,膨大な情報を整理しなくてはならない場面にも出くわすだろう。このときこそテクノロジーを活用したい。勿論最新鋭のテクノロジーが利用可能であるならば,それを大いに活用すべきであるが,どんなに古くなったパソコンであれ,我々の学校教育に活用できる能力を備えているのではないだろうか。
(東京都立田柄高等学校 坂本 正彦)

参考文献
※1:ICMI Study Series,The Influence of Computers and Informatics on Mathematics and its Teaching,Strasbourg,1985.(邦訳:数学教育とコンピュータ,聖文社,1989.)
※2:平成5年度文部省科学研究費補助金研究成果報告書;筑波大学,数学班,中学校・高等学校数学科教育課程開発に関する研究〜離散数学の教材化とコンピュータの活用,1994.
※3:日本数学教育学会,平成5年度文部省委託研究,算数・数学科における学習用ソフトウェアとその活用に関する研究,1994.
※4:財団法人コンピュータ教育開発センター(CEC),市販ソフト実践事例集,1996.
※5:明治図書,数学教育誌連載,テクノロジーを用いた実験・観察アプローチ,1996.1.〜.


CEC HomePage平成8年度市販ソフト実践事例集II