Your multiplier array and your code to populate it is the problem. The array is of type int but you are trying to store a double into it. This will just cause a truncation problem for storing the values. The main issue is in your for loop on line 61. You set y to .01 which the compiler will make equal to 0 for an int data type. Since y is zero and you are multiplying it by 10 you will always get zero and have an infinite loop. I would suggest you change the type of the array you are using and you will also need to rewrite the code to fill the array. For filling the array I would do something like this
// in class body
Double Multipliers[10];
//...
// in constructor
Multipliers[0] = .01;
for (int i = 1; i < 10; i++)
Multipliers[i] = Multipliers[i – 1] * 10;
//…