Advertisement
Guest User

Untitled

a guest
Apr 29th, 2016
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1.  
  2. function checkCashRegister(price, cash, cid) {
  3. var change = cash - price;
  4.  
  5. var totalCid =0;
  6. for(var i = 0; i < cid.length; i++) totalCid += cid[i][1];
  7.  
  8. var returnArr = [["PENNY",0], ["NICKEL", 0], ["DIME", 0], ["QUARTER", 0], ["ONE", 0], ["FIVE", 0], ["TEN", 0], ["TWENTY", 0], ["ONE HUNDRED", 0]];
  9.  
  10. function hasValue (value) {return value[1] > 0;}
  11.  
  12. if(change>totalCid) {
  13. return "Insufficient Funds";
  14. }
  15. else if(change==totalCid) {
  16. return "Closed";
  17. }
  18.  
  19.  
  20. else {
  21. while(change >= 0.01) {
  22.  
  23. if (change >=100 && cid[8][1] >= 100){
  24. change -= 100;
  25. cid[8][1] -= 100;
  26. returnArr[8][1] += 100;
  27. }
  28. else if (change >= 20 && cid[7][1] >= 20){
  29. change -= 20;
  30. cid[7][1] -= 20;
  31. returnArr[7][1] += 20;
  32. }
  33. else if (change >= 10 && cid[6][1] >= 10){
  34. change -= 10;
  35. cid[6][1] -= 10;
  36. returnArr[6][1] += 10;
  37. }
  38. else if (change >= 5 && cid[5][1] >= 5){
  39. change -= 5;
  40. cid[5][1] -= 5;
  41. returnArr[5][1] += 5;
  42. }
  43. else if (change >= 1 && cid[4][1] >= 1){
  44. change -= 1;
  45. cid[4][1] -= 1;
  46. returnArr[4][1] += 1;
  47. }
  48.  
  49. else if (change >= 0.25 && cid[3][1] >= 0.25) {
  50. change -= 0.25;
  51. cid[3][1] -= 0.25;
  52. returnArr[3][1] += 0.25;
  53. }
  54.  
  55. else if (change >= 0.10 && cid[2][1] >= 0.10){
  56. change -= 0.10;
  57. cid[2][1] -= 0.10;
  58. returnArr[2][1] += 0.10;
  59. }
  60. else if (change >= 0.05 && cid[1][1] >= 0.05){
  61. change -= 0.05;
  62. cid[1][1] -= 0.05;
  63. returnArr[1][1] += 0.05;
  64. }
  65. else if (change >= 0.01 && cid[0][1] >= 0.01){
  66. change -= 0.01;
  67. cid[0][1] -= 0.01;
  68. returnArr[0][1] += 0.01;
  69. }
  70. else return "Insufficient Funds";
  71.  
  72. }
  73.  
  74. return returnArr.filter(hasValue).reverse();
  75.  
  76. }
  77. }
  78.  
  79.  
  80.  
  81.  
  82.  
  83. checkCashRegister(3.26, 100.00, [["PENNY", 1.01], ["NICKEL", 2.05], ["DIME", 3.10], ["QUARTER", 4.25], ["ONE", 90.00], ["FIVE", 55.00], ["TEN", 20.00], ["TWENTY", 60.00], ["ONE HUNDRED", 100.00]]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement