回答編集履歴

2

fix

2017/07/10 09:32

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -32,7 +32,7 @@
32
32
 
33
33
  return j
34
34
 
35
- endif
35
+ end
36
36
 
37
37
  ```
38
38
 

1

fix

2017/07/10 09:32

投稿

mattn
mattn

スコア5030

test CHANGED
@@ -46,4 +46,4 @@
46
46
 
47
47
 
48
48
 
49
- となっています。この「ブロックの前回の戻り値」がミソで、例えば配列の先頭2つ 3 と 89 を渡すと、`i > j ? i : j` は 89 の方が大きいので偽、つまり j(89) が返ります。その 80 と 49 で次のブロックが実行され、89 の方が大きいので j(89) が返ります。もうお気付きだと思いますが、これは2項を得て大きい方の数値を返す関数で、つまりは配列の中から一番大きい値を返す処理になるのです。
49
+ となっています。この「ブロックの前回の戻り値」がミソで、例えば配列の先頭2つ 3 と 89 を渡すと、`i > j ? i : j` は 89 の方が大きいので偽、つまり j(89) が返ります。その 89 と 49 で次のブロックが実行され、89 の方が大きいので j(89) が返ります。もうお気付きだと思いますが、これは2項を得て大きい方の数値を返す関数で、つまりは配列の中から一番大きい値を返す処理になるのです。