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

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

2023-06-01から1ヶ月間の記事一覧

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

たらい回し関数(2) 前回の「たらい回し関数」で「ここには来ない」と書いたところは間違っていて、実際にはもう1回は来るので書き直します。「たらい回し関数」(TyprScript)は以下のようになります(引数を追加しました)。 var count1: number = 0; var depth…

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

偶置換・奇置換(4) 以下のコード(TypeScript)は置換の転倒数を求めます。これは有限回の繰り返しなので終了します。 function inversion_count(list: number[]): number { var count = 0; for (var i = 0; i < list.length - 1; i++) { for (var j = i + 1; …

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

偶置換・奇置換(3) 置換の全体を 、互換(2つの要素を交換する互換)の全体を 、基本互換(隣接する2つの要素を交換する互換)の全体を とおきます。 転倒数 ( は自然数全体の集合)を定義することができます。バブルソートの交換回数は転倒数と一致するのでバブ…

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

偶置換・奇置換(2) 「群論の計算(9) - エレファント・コンピューティング調査報告」や「エレファントな線形代数(5) - エレファント・コンピューティング調査報告」では以下のようなことを説明しています。ここでは、「バブルソート」は隣接する2つの要素を交…

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

たらい回し関数(1) 「たらい回し関数(1) - エレファント・コンピューティング調査報告」で取り扱った「たらい回し関数」も普通にプログラムを書くことができるので、これについても考えてみます。「たらい回し関数」(TyprScript)は以下のようになります。 va…

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

偶置換・奇置換(1) Blocklyでブロックを繋げるときに何も選択しなくてもよい例を考えてみます。「群論の計算(9) - エレファント・コンピューティング調査報告」や「エレファントな線形代数(5) - エレファント・コンピューティング調査報告」で取り上げた、置…

中間報告(14)

「Blockly | Google for Developers」の調査 「関数のグラフ(Blockly)」 「プログラム電卓(Blockly)」 に加えて 「フラクタル(Blockly)」 「ブロックロージャー」 を作成しました。自力でクラスを作れば「Blockly | Google for Developers」、「Charts | Goo…