>>358
考え方として、逆順にすると言う目的に対して>358の前者のコードが
「配列の前半分の要素について、それぞれ対応する後ろ半分の要素と交換する」
という形で解決すべく書かれているということを抑えておくといいと思う。

要は、パズルの結果としてコードがあるのではなく、やりたいことを実現するためにコードがあると言うこと。
それが判っていれば、>358の後者では上に括弧書きした解決手段(アルゴリズム)を実現できていないことは自明だろう。