Buenas,
El problema es que estás utilizando enteros en la operación y por lo tanto redondea la cifra. Debes forzar que la operacion sea de tipo double, para ello basta con que conviertas uno de los operandos. Por ejemplo:
DatosPIB DatosPib2010=new DatosPIB(Nombre,Pib2010,(((Pib2010-Pib2009)*100)/
(double)Pib2009),2010);
Por cierto, y este comentario?
Cita: /**
* Write a description of class Subnormal here.
WTF!
Un saludo