質問: 0; i < 3; i++)`とあったので配列の**(要素数 - 1) / 2**かと思ったのですが、それは正しいのですか? **配列の要素数 / 2** か **(配列の要素数 - 1) / 2** のどちらが正しいのですか? また、添字が偶数で終わる時と、奇数で終わるときでは処理に違いは出るのでしょうか?
回答: > > 配列の要素数 / 2 > > > これが正しいです。 > > (配列の要素数 - 1) / 2 > > > これは明らかに間違いです。整数値を割り算すると少数切り捨てになります。要素数が6の場合、この式だと (6 - 1) / 2 = 2.5 → 2 となり、for分で半分まで到達しなくなります。 > > また、添字が偶数で終わる時と、奇数で終わるときでは処理に違いは出るのでしょうか? > > > 奇数の場合は、前述のように切り捨てられてfor文で中央の値に到達しなくなりますが、中央はひっくり返しても中央なので、処理しなくても結果は同じになります。