It's not really 50:
double percent = 0.08680555;
int sourceHeight = 576;
System.out.println(sourceHeight * percent); // e.g. Java
49.9999968
Casting as int
truncates the fractional part, leaving 49.
You can try using some sort of round()
function:
double percent = 0.08680555;
int sourceHeight = 576;
System.out.println(Math.round(sourceHeight * percent));
50