What is the wrong with this code?
===

              String phrase = "4556.44";
             Float num = new Float(phrase);
            int dollars = (int) Math.floor(num);
             System.out.println(""+dollars);
            int cent = (int) Math.floor((num - dollars) * 100.0F);
            int cent2 =  (int) ((num - dollars) * 100.0);
            System.out.println(""+cent+":"+cent2);
This is a  Number to Word Class  Code Phrase,My Problem is When I run this Code Fragment the Output result is 4556.43.But the Input value is  4556.44.Please tell me Why this is happened and  I need the answer for correct this Problem.Thanks