エレファント・ビジュアライザー調査記録

ビジュアルプログラミングで数式の変形を表すことを考えていくブロクです。

ビジュアルプログラミング(13)

プログラム電卓(Blockly)

Blockly  |  Google Developers」を使って簡単なプログラムを作ることができる「プログラム電卓(Blockly)」を作成しました。

使い方

プログラム電卓(Blockly)
  • (1) ブロックを選択する領域(ツールボックス)
  • (2) ブロックを表示する領域
  • (3) ボタンの領域(ボタン1~ボタン5)
  • (4) 変数の領域( x,y,z,a,b,c,,d,e,f)
  • (5) ブロックの領域に読み込むボタン
  • (6) サンプルを選択するリスト
  • (7) ブロックの領域をテキストにしたものを入力する領域
  • (8) ブロックの領域をテキストにしたものを表示するボタン
  • (9) ブロックの領域をテキストにしたものを表示する領域

(1)の領域からブロックを選択して(2)の領域にドラッグ&ドロップしてつなげていってプログラムを作り、(4)の領域に変数の値を入力し、(3)のボタンのどれかを押すと、プログラムが実行されて(4)の領域に変数の値が表示されます。

「もし」と「ボタン1」から「ボタン5」までのブロックをつなげたところに実行する内容をつなげると、指定したボタンを押したときにそのプログラムが実行されます。

「もし」と「ボタン1」をつなげた様子

(8)のボタンを押すと(2)の領域の内容をXMLで表したテキストが(9)の領域に表示されます。これをテキストエディタなどにコピー&ペーストして保存しておくと、これを読み出して(7)の領域にコピー&ペーストの後(5)のボタンを押すと(2)の領域を復元することができます。

(6)のリストを選択すると(7)の領域にサンプルのXMLが表示されます。その後(5)のボタンを押すと(2)の領域にサンプルが表示されます。

ユークリッドの互除法」の使い方

(6)のリストから「ユークリッドの互除法」を選択すると(7)の領域にサンプルのXMLが表示されます。その後(5)のボタンを押すと(2)の領域に「ユークリッドの互除法」のサンプルが表示されます。

(I) (4) x y の領域に正の整数を入力してください(これを  x_0 y_0 とします)。

(II) (3)の「1」のボタンを押してください。(4)の領域に  a = 1 b = 0 c = 0 d = 1 が表示されます。

(III) (3)の「2」のボタンを、(4)の領域が  y=0 になるまで繰り返し押してください。 x x_0 y_0 の最大公約数となります。 x = ax_0 + by_0 となります。

(I)の後(3)の「3」のボタンを押すと(II)と(III)を続けて実行できます。