乱数
乱数
ランダムな整数を作成するには、以下のコマンドを使用します。[br][list][*][b]RandomBetween(1, 10 )[br][/b]1~10 までの整数を選択するコマンド。[/*][*][b]RandomElement({-2,-1,1, 2})[br][/b]リストの中から数を選ぶコマンド.選ばれる確率は等確率.[br]この例は -2, -1, 1, 2の中から選ばれます。[/*][*][b]RandomDiscrete({1, 2, 3, 4, 5}, {1, 4, 4, 4, 1})[/b][br]このコマンドは2つのリストを使用します。最初のリストには選ばれる可能性のある数字、2つ目のリストには、それぞれの数字が出てくる割合を表します。[br]この例では、2、3、4の数字を選ぶ確率は、1、5を選ぶ確率の4倍でになっています。[/*][/list]
シャフルリスト(リストの中の順番入れ替え)
シャッフルリストを使用して、番号を追加または除外したり、同じ数値でないものを選ぶことができます.[br][list][*][b]list1 = Shuffle[{-3, -2, -1, -0.5, 0.5, 1, 2, 3}][/b] [br]-3から3までの数字から0を除外し、-0.5と0.5を加えた数字のリストを作成します。数字はランダムな順序で並べられます。[/*][*][b]a = list1(1)[/b] [br]a にシャッフルされたリストの最初の数字が代入されます。[/*][*][b]b = list1(2)[/b] [br]b にシャッフルされたリストの2番目の数値が代入されます。[br]リストに重複がないときは aがbと等しくないことが保証されます。[/*][/list]
答を入力するボックス
2つの整数の和
次のアプレットは、2つの整数の足し算の練習問題です。[br]解答の正誤は入力ボックスの色で解答者にフィードバックします。[br]最初に動作を確認してください。
やってみましょう
作成手順
[table][tr][td]1[/td][td][/td][td]入力バーに 「[b]a = RandomBetween(1, 10)[/b]」 と入力し、数値 [b]a[/b] を作成します。[/td][/tr][tr][td]2[/td][td][/td][td]入力バーに 「[b]b = RandomBetween(1, 10)[/b]」 と入力し、数値 [b]b[/b] を作成します。[/td][/tr][tr][td]3[/td][td][/td][td]入力バーに「[b]sol = a + b[/b]」と入力し、数[b]sol[/b]を作成する。[/td][/tr][tr][td]4[/td][td][/td][td]入力バーに「[b]ans = 0[/b]」と入力し、数値[b]ans[/b]を作成します。[/td][/tr][tr][td]5[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]テキストを挿入を選択し、動的テキスト[b]a[/b] + [b]b[/b]を作成します。[/td][/tr][tr][td]6[/td][td][icon]/images/ggb/toolbar/mode_textfieldaction.png[/icon][/td][td]入力ボックスの挿入を選択し、グラフィックをクリックし,[br]見出しに「=」と入力、リンクされたオブジェクトに「[b]ans=0[/b]」を選びます。[br]注意:プロパティでは、長さ(スタイルタブ)とテキストスタイルを変更することができます。[/td][/tr][tr][td]7[/td][td][icon]/images/ggb/toolbar/mode_buttonaction.png[/icon][/td][td]ボタンを選択し、グラフィック内をクリックして、見出しに「[b]new exercise[/b]」と入力、スクリプト記述に「[b]UpdateConstruction[][/b]」と入力します。[/td][/tr][/table]
条件付きの色でフィードバック
動的色を使用することで、答えが間違っているときは入力ボックスを赤く、正解のときは緑に着色することができます。[br][list][*]入力ボックスの上で右クリックします。[/*][*]オブジェクトのプロパティを選択し、ダイアログを開きます。[/*][*]上級タブを選択[/*][/list]
[list][*]赤:ansが0でもsolでもない場合、入力ボックスは赤色になります。そうでない場合は変わりません。[/*][*]緑:ansがsolと等しい場合、緑になる。[br]注:1の代わりに0.7を使用すると、緑色が少し濃くなります。[/*][/list]「new exercise」ボタンをクリックしたときに入力ボックスが赤くならないようにするには、ボタンのスクリプトに数値を初期化するコマンドを追加する必要があります。ボタンを右クリックして、2行目に[br]「[b]SetValue(ans,0)[/b]」数値ansを0に戻すコマンドです。
テキストによるフィードバック
文字でフィードバック
動的な色を使う代わりに、テキストでフィードバックを表示することができます。[br]次のアプレットでは、与えられた答えが正しいときは緑色のテキスト「[b]Correct![/b]」 を、正しくないときは赤色のテキスト「[b]Try again![/b]」 を表示します。 次のアプレットでどのように動作するか見て、作成手順に従ってこれらのテキストを追加してみてください。
やってみましょう
作成手順
[table][tr][td]1[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td][テキストの挿入]で、「[b]Correct![/b]」を作成します。文字を右クリックし、プロパティから[色]を「緑」、[上級]の[オブジェクトの表示条件] に「[b]ans == sol[/b]」と入力します。(イコール2つ)[br][/td][/tr][tr][td]2[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td][テキストの挿入]で、「[b]Try again![/b]」を作成します。文字を右クリックし、プロパティから[色]を「赤」、[上級]の[オブジェクトの表示条件] に「[b](empty <>"") && (ans <> sol)[/b]」と入力します。入力ボックスが空でなく、ansがsolと等しくない場合に表示されます。[/td][/tr][/table]
点をドラッグする
点をドラッグする
次のアプレットでは、与えられた座標に点を移動させるものです。どのように動作するかを見てから、与えられた作成手順に従って自分で作ってみましょう。
やってみましょう
作成手順
[table][tr][td]1[/td][td][/td][td]入力バーに「[b]a = RandomBetween(-4, 4)[/b]」と入力して、数値aを作成します。[/td][/tr][tr][td]2[/td][td][/td][td]入力バーに「[b]b = RandomBetween(-4, 4)[/b]」と入力して、数値bを作成します。[/td][/tr][tr][td]3[/td][td][/td][td]入力バーに「[b]Sol = (a, b)[/b]」 と入力して、点 Sol を作成します。[/td][/tr][tr][td]4[/td][td][/td][td]入力バーに「[b]P = (-5, 5)[/b]」と入力すると、Solの座標の範囲外の点Pが作成されます。[br]その上で右クリックすると、ダイナミックカラーを設定できます(下図参照)。[/td][/tr][tr][td]5[/td][td][icon]/images/ggb/toolbar/mode_buttonaction.png[/icon][/td][td]ボタンツールを選択し、見出しに「new exercise」、スクリプト記述に[br][list][*][b]「UpdateConstruction[]」[/b] (aとbの再計算)[/*][*][b]「SetValue[P,(-5,-5)][/b] 」(Pを元の場所に戻す)[/*][/list][/td][/tr][tr][td]6[br][/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]「Drag P so that P =(a, b)」となるように動的テキストを作成します。[br]aとbは使用可能なオブジェクトのリストで選択します。[/td][/tr][/table][br][u]Hint[/u]: グラフィックスのスタイルバーで[点をつかむスタイル][img]https://wiki.geogebra.org/uploads/thumb/a/a8/Stylingbar_graphicsview_point_capturing.svg/16px-Stylingbar_graphicsview_point_capturing.svg.png[/img]を「グリッドに固定」に設定します。
一次関数の傾き(点をチェックボックスに使う)
点をチェックボックスに使う
点は、スクリプトでスタイルと色を定義できるので、チェックボックスとして使用することができます。 点のスタイルは、0から9までの10種類あります。こ こ では、 [br][list][*]チェックなし (点のスタイル = 2)[/*][*]チェックあり (点のスタイル = 0)[/*][/list]点Aで表される選択肢が正しい場合は緑色に、間違っている場合は赤色に、[b]SetColor[A, "green"] [/b]と [b]SetColor[A, "red"] [/b]というコマンドで色付けします。
一次関数の傾き
一次関数のグラフは、増加(ascending)、減少(decending)、またはそのどちらでもないことがあります。次のアプレットでは、正しい選択肢を選ぶものです。どのように動作するかを見て、作成手順に従って、自分で作ってみましょう。
やってみましょう
作成手順
[table][tr][td]1-2[/td][td][/td][td]入力バーで「[b]RandomBetween[-4, 4]」[/b]と入力して数字a,bを作成します。[/td][/tr][tr][td]3[/td][td][/td][td]入力バーで「[b] f(x) = Polynomial[a x + b] [/b]」と入力し関数 f を定義します。[br] 注意: Polynomial[] コマンドは、方程式が例えば 1x + 2 のように表示されるのを防ぐことができます。[/td][/tr][tr][td]4-6[/td][td][icon]/images/ggb/toolbar/mode_point.png[/icon][/td][td]点のツールを選択し、グラフィック内で3回クリックして、3つの点A、B、Cを作成します。[/td][/tr][tr][td]7-9[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]テキストツールを選択し、「 [b]is ascending[/b], [b]is descending[/b] , [b]none of both[/b].」と3つのテキストを作成します。[br]この3つのテキストをA,B,Cの点の位置に合わせます。[/td][/tr][tr][td]10[/td][td][/td][td]入力バーで「[b]ans = 0[/b]」と入力して、変数 ans を作成します。[/td][/tr][tr][td]11[/td][td][/td][td]入力バーで「[b]sol = If [a > 0, 1, If[a < 0, 2, 3]][/b]」と入力して、数solを定義します。[br]ように、solの値は入れ子の条件で定義される。[br]- もし a > 0 なら [sol = 1][br]- もし a < 0 なら [sol = 2][br]- もし a = 0 なら [sol = 3][br][/td][/tr][tr][td]12[/td][td][icon]/images/ggb/toolbar/mode_buttonaction.png[/icon][/td][td]ボタンツールでボタンを作成します。見出し「new exercise」とスクリプト記述:[br][b]UpdateConstruction[] [/b] (ランダムな数を再計算させる)[br][b]SetValue[ans,0] [/b] ( ansの数値を初期値の0にする)[br][b]SetPointStyle[A, 2] [/b] (A, B, Cをチェックなしに変える)[br][b]SetPointStyle[B, 2][br]SetPointStyle[C, 2][/b][br][b]SetColor[A, "blue"][/b] (点A, B, Cの色を青にする)[br][b]SetColor[B, "blue"][br]SetColor[C, "blue"][/b][br][/td][/tr][tr][td]13[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]テキストツールを選択し、「the graph of f(x)=[b][color=#0000ff]f[/color][/b]」sを入力します。[b][/b][color=#0000ff][b]f[/b][/color] のみ動的テキストでオブジェクトのリストから選びます。[b][br][/b][/td][/tr][/table]
3つの点のスクリプト記述
答えの確認のために、3つの点にそれぞれスクリプトを追加しています。[br][list][*]数値ans がAをクリックすると1、Bをクリックすると2、Cをクリックすると3になります。[/*][*]3つの点のうち1つを選択すると、点のスタイル0(=チェックあり)となり、他の2つはチェックを外すされ,点のスタイル2(=チェックなし)となり、青色に戻ります。[/*][*]正しく選択された場合は緑色に、誤って選択された場合は赤色に表示されます。[/*][/list]それぞれの点の上で右クリックし、[スクリプト記述]の[クリックして]にスクリプトを入力します。
答えは、点の動的な色によって正誤が判定されます。下は、点Aの[上級]の[動的な色]です。[br]BとCについて(ansの値に対応して)判定するだけで、ans ==2 または3とすれば良いだけです。
グラフと方程式を組み合わせる
グラフのイメージ
4つの関数のグラフとその方程式を組み合わせます。まず、グラフを作成する準備作業が必要です。グラフィックビューを画像として書き出すことができます([url=https://wiki.geogebra.org/en/Export_Graphics_Dialog]マニュアル[/url](英語)参照)。 マニュアルの記事を読み、以下の4つの関数の画像をパソコンに保存してください。[br][list][*]f(x) = x²[/*][*]f(x) = x² + 2[/*][*]f(x) = (x + 2)²[/*][*]f(x) = -x²[/*][/list][url=https://wiki.geogebra.org/en/Image_Tool]マニュアル[/url](英語)には、アプレットに画像を挿入する方法が載っています。
プルダウンリスト
グラフと式を対応させるために、A、B、C、Dの中から適切な答えを選択するドロップダウンリストと、その初期位置として空白を表示する方法を使います。[br][list][*]「[b]list1= {"", "A", "B", "C", "D"} 」[/b]というコマンドを入力します。[/*][*]数式ビューで[b]list1[/b]を右クリックすると、そのプロパティが表示させて、[br][b]基本[/b]のタブで 「 [b]ドロップダウンリストとして表示」[/b] にチェックを入れます.[/*][*]入力バーで「 [b]ans1= SelectedIndex[list1]」[/b]と入力します。 選択肢Aを選択した場合、ansには2が代入され,初期位置(空欄)ではans1は1となります。[/*][/list]
やってみましょう
作成手順
[table][tr][td]1-12[/td][td][icon]/images/ggb/toolbar/mode_image.png[/icon][/td][td]画像の挿入を選択し、4つのグラフの画像を挿入します。 下側の2つの点をドラッグして[br]グラフィックに配置します。 位置を決めたこの点を後で隠します。[/td][/tr][tr][td]13-16[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]テキスト挿入で、グラフをA、B、C、Dとラベルをつけます。[/td][/tr][tr][td]17-20[/td][td][icon]/images/ggb/toolbar/mode_text.png[/icon][/td][td]テキストツールを選択し、関数の4つの方程式を入力します。[/td][/tr][tr][td]21-24[/td][td][/td][td]4つのリストを定義し、式の後ろにドロップダウンリストとして描きます。 [br]注意点list1 が f1 などの後ろにあることを確認。[/td][/tr][tr][td]25-28[/td][td][/td][td]4つの答えを次のように定義する: [b]ans1 = SelectedIndex[list1] [/b]ほか.[/td][/tr][tr][td]29[/td][td][icon]/images/ggb/toolbar/mode_buttonaction.png[/icon][/td][td]ボタンツールを選択し、見出し「reset」とスクリプト記述:[br][b]SetValue[list1,1][/b] 4つのドロップダウンリストを初期化して空白にする[br][b]SetValue[list2,1][br]SetValue[list3,1][br]SetValue[list4,1][/b][br][/td][/tr][/table]
ドロップダウンリストの動的な色の設定
ここでも動的な色を使って、選択された答えの正誤を表示することができます。[br] f[sub]1 [/sub] = x² でグラフは Dになっている場合[br][list][*]間違っているときは赤色で表示します。これは[br]空白ではなく (ans [math]\ne[/math] 1) また D以外が選択されたとき (ans [math]\ne[/math] 5).[/*][*]正しいときに緑色で表示します.[br]これは Dが選択されたとき (ans = 5).[/*][/list]他のリストも同じような設定です。
この応用として多くの演習が考えられますが・・・・
傾き、符号、方程式、微分、グラフ、根や漸近線のリスト、対称軸などを組み合わせて、同様の方法で数多くの練習問題を作ることができます。[br] ただし,あらかじめ組み合わせが決められているため,繰り返してやることができないアプレットになってしまいます。