Let's say we want to show 4 items per page. Let's calculate this through:
first case: we have 8 items. 8 divided by 4 is 2 so we need two pages. good
second case: we have 9 items. 9 divided by 4 gives us 2.25.
So we clearly need a 3rd page here. That's why I compare two values here: the actual division result and one with an extra 0.499 added what gives us 2.749. (lines 2-4)
lines 5-6 we round both results in order to find out if they get rounded to different integers.
if they differ by 1 we have a scenario where we want another page, so we pick the bigger result as our page number. (lines 7-8). if they get rounded to the same integer we are happy and use the smaller number.
note: if we added 0.5 instead of 0.499 the first case would give us 2.5 which would have been rounded to 3. but actually we are fine with 2 pages for 8 items.
now that we know our actual page count we can do something like