質問者が「数学的に」と言ってきてるのだから
複素数にも対応してあげるのが親切ってもんだろう。
そこはfloorでもceilでもなくto_iだな。