ErolKZ

Untitled

Aug 4th, 2021
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.37 KB | None | 0 0
  1.  
  2. const products = [
  3. { number: 1, price: 100, name: 'Orange juice' },
  4. { number: 2, price: 200, name: 'Soda' },
  5. { number: 3, price: 150, name: 'Chocolate snack' },
  6. { number: 4, price: 250, name: 'Cookies' },
  7. { number: 5, price: 180, name: 'Gummy bears' },
  8. { number: 6, price: 500, name: 'Condoms' },
  9. { number: 7, price: 120, name: 'Crackers' },
  10. { number: 8, price: 220, name: 'Potato chips' },
  11. { number: 9, price: 80, name: 'Small snack' },
  12. ];
  13.  
  14.  
  15. function vendingMachine(products, money, productNumber) {
  16.  
  17.  
  18.  
  19. if (productNumber - 1 > products.length || productNumber <= 0) {
  20.  
  21. return "Enter a valid product number";
  22.  
  23. }
  24.  
  25.  
  26. if (money < products[productNumber - 1].price) {
  27.  
  28. return "Not enough money for this product";
  29.  
  30. }
  31.  
  32.  
  33.  
  34.  
  35. let product = products[productNumber - 1].name;
  36.  
  37. let change = money - products[productNumber - 1].price;
  38.  
  39. let arrChange = [500, 200, 100, 50, 20, 10];
  40.  
  41.  
  42.  
  43. let finalChange = [];
  44.  
  45. let holder = 0;
  46.  
  47.  
  48. for (let i = 0; i < arrChange.length; i++) {
  49.  
  50.  
  51. holder += arrChange[i];
  52.  
  53. if (holder > change) {
  54.  
  55. holder -= arrChange[i];
  56.  
  57. continue;
  58.  
  59. }
  60.  
  61.  
  62. if (holder <= change) {
  63.  
  64. finalChange.push(arrChange[i]);
  65.  
  66. i--;
  67.  
  68. }
  69.  
  70.  
  71.  
  72.  
  73. }
  74.  
  75.  
  76.  
  77.  
  78.  
  79. console.log({ 'product': product, 'change': finalChange });
  80.  
  81. }
  82.  
  83.  
  84. vendingMachine(products, 500, 1);
Advertisement
Add Comment
Please, Sign In to add comment