#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
Accumulatorは結果の集め方を独自に定義したいときに使う。
入出力
Accumulatorには他と違い標準インプットが3つある。
(他にインプットが追加で1つあるのだが何に使うかよく分からないので説明は省く。)
(他にインプットが追加で1つあるのだが何に使うかよく分からないので説明は省く。)
#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
第1アウト:値を集めfunで設定したやり方で値を蓄える。そして現在の状態を返す。
第2アウト:現在の状態を返す
第3アウト:initで設定した初期値に戻す
第2アウト:現在の状態を返す
第3アウト:initで設定した初期値に戻す
例:引き算していく
以下は初期値100から入力リストの要素をどんどん引いていくプログラム。
#ref error :画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
- ListLoopがリストをもらい、1つ目の8を取り出す。
- eachTimeが働いて
- 第2アウトから現在値100をもらってprintする。
- 第1アウトから値を集めさせる。ListLoopが持ってる8がOm-関数に当てがわれ、現在値は8引かれて92になる。その値をprintする。
- ListLoopが2つ目の2を取り出す。
- eachTimeが働いて
- 第2アウトから現在値92をもらってprintする。
- 第1アウトから値を集めさせる。2がOm-関数に入って、現在値は2引かれて90になる。その値をprintする。
- (あと2回繰り返し)
- ListLoopは5つ目がないのでループを止める。
- finallyは現在値78をもらって外に「OM => 78」と出力。