見出し画像

【GH♯2】anemoneの謎/繰り返し回数をインデックスごとに指定できるのか?

キャプチャ

●繰り返し回数をインデックスごとに指定できるのか?
上図は、
『「1と10」それぞれに5を足す。これを2回繰り返す。』
というアルゴリズムです。
なので、最終的に出力される数字は『11と20』。

これを、
『1への足し算は2回、10への足し算は5回』というように、
繰り返し回数をインデックスごとに指定することは可能か?

というのが今回のテーマです。
※この先の実験は読み飛ばして結論に飛んでしまって大丈夫です。

【実験1/Iterationの数字をリストにする】
まずは最もシンプル、Iterationの数字を「2」から「①2②5」と変更します。
これで実現できれば理想です

キャプチャ1

…なぜかリストが4つに増えました。どゆこと?
足し算の繰り返しは一律で5回行われていそうです。

【実験2/Iteration、Dataをgraftする】
リスト構成が2:2になっていることが原因と予測し、
1:1関係になるような部屋分けにしてあげます。

キャプチャ

…あんまり変わりませんでした。繰り返し回数は同じく5回。

【実験3/片側だけGraftをかけてみる】

Iteration側にGraft↓

キャプチャ

Data側にGraft↓

キャプチャ1

BranchはあくまでData側に引っ張られていることで良さそうです。

【実験4/Iterationの数字を変えて挙動を見てみる】

●実験1の時の「①2②5」を「①5②2」と逆転させる↓

キャプチャ2

最終的な数字が変わりました。今度は繰り返し回数が2になったようです。

●「①2②5」を「①2②5③10」と変更する↓

キャプチャ

リストが6個に増え、繰り返し回数が10になりました。

●結論/fast loopだけでは不可能
fast loopのみではやりたいことはできなさそう、、、というのが結論。
今回は以下のことがわかりました
①Iterationに入れるインデックスは1つのみ入れることが大前提
②もしIterationに複数数値を入れた場合、
 Dataの数がIterationに入っているインデックスの数だけ複製される
③Iterationに複数数値が複数入っていても、
 繰り返される数はリストの最後が適用される

●結局、こんな感じで解決↓

けつろん

anemoneはまだ基本的な使い方しかわかってないので、
もう少しシンプルなやり方あったらおしえてください

この記事が気に入ったらサポートをしてみませんか?