今日はC#でのint型のマイナスの割り算について、混乱してきたので整理した。
まず、int同士の割り算は基本的にすべて切り捨て。0の方向に向かう。1/3も-1/3も0、4/3は1で-4/3は-1。
マイナスの割り算を切り上げしたい場合には注意が必要。通常割り算の切り上げは(a+b-1)/bという形でb-1を足すことでできるが、aが負の場合は普通にa/bをした結果が切り上げになる。
pythonの切り捨て除算だと-2//3 = -1 になるらしく気をつけなくちゃいけない。切り捨て除算は正の数のときに切り捨てに、負の数のときに切り上げになるみたいだ。
訳わかんなくなりそうだから、後で一目でわかるgif動画でも作ろうと思う。