Want more features on Pastebin? Sign Up, it's FREE!
Guest

Challenge #119

By: a guest on Mar 11th, 2013  |  syntax: Java  |  size: 1.21 KB  |  views: 8  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. private static String change(double d)
  2. {
  3.                 int quarters = 0;
  4.                 int dimes = 0;
  5.                 int nickels = 0;
  6.                 int pennies = 0;
  7.                 String doublerep = String.valueOf(d);
  8.                 if (doublerep.length() > 6)
  9.                 {
  10.                         doublerep = doublerep.substring(0, 5);
  11.                 }
  12.                 BigDecimal change = new BigDecimal(doublerep);
  13.                
  14.                 while(change.compareTo(BigDecimal.ZERO) >= 0)
  15.                 {
  16.                         change = change.subtract(BigDecimal.valueOf(.25));
  17.                         quarters++;
  18.                 }
  19.                 quarters--;
  20.                 change = change.add(BigDecimal.valueOf(.25));
  21.                
  22.                 while(change.compareTo(BigDecimal.ZERO) >= 0)
  23.                 {
  24.                         change = change.subtract(BigDecimal.valueOf(.1));
  25.                         dimes++;
  26.                 }
  27.                 dimes--;
  28.                 change = change.add(BigDecimal.valueOf(.1));
  29.                
  30.                 while(change.compareTo(BigDecimal.ZERO) >= 0)
  31.                 {
  32.                         change = change.subtract(BigDecimal.valueOf(.05));
  33.                         nickels++;
  34.                 }
  35.                 nickels--;
  36.                 change = change.add(BigDecimal.valueOf(.05));
  37.                
  38.                 while(change.compareTo(BigDecimal.ZERO) >= 0)
  39.                 {
  40.                         change = change.subtract(BigDecimal.valueOf(.01));
  41.                         pennies++;
  42.                 }
  43.                 pennies--;
  44.                 change = change.add(BigDecimal.valueOf(.01));
  45.                
  46.                 return "Change for: " + d + "\n-------------------\nQuarters: " + quarters + "\nDimes: " + dimes + "\nNickels: " + nickels + "\nPennies: " + pennies + "\n";
  47. }
clone this paste RAW Paste Data