In this tutorial there's a part in which they try to shuffle the lines of a file and then split the file into two.
I do not understand why when splitting the file into 2, instead of dividing the number of lines by two they add 1 and then divide by two. Why is that?

In bash it only gives the integer part of the number. If the original file has for e.g. 3 lines and we want to split in half, we want one file to have 2 lines and the other 1 line, but 3/2=1.5 and bash considers to be =1, so then the file will be split in 3 files each one with one line. If we add 1 before dividing by 2: (3+1)/2=2, so bash will put two lines into a file and the remaining 1 line in the other, as we wanted.

If the file has an even number of lines: for e.g original file has 4 lines, (4+1)/2=2.5 and bash thinks it's 2, so file will be split into files which will contain 2 lines each, so still does what we want for even numbers.