w3resource

CoffeeScript function: Convert an amount to coins

CoffeeScript Function : Exercise-18 with Solution

Write a CoffeeScript function to convert an amount to coins.

Sample function : amountTocoins(46, [25, 10, 5, 2, 1])
Here 46 is the amount. and 25, 10, 5, 2, 1 are coins.
Output : 25, 10, 10, 1

HTML Code :

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <script src="//jashkenas.github.io/coffee-script/extras/coffee-script.js"></script>
  <title>Convert an amount to coins</title>
</head>
<body>

</body>
</html>

CoffeeScript Code:

amountTocoins = (amount, coins) ->
  if amount == 0
    []
  else
    if amount >= coins[0]
      left = amount - coins[0]
      [ coins[0] ].concat amountTocoins(left, coins)
    else
      coins.shift()
      amountTocoins amount, coins

console.log amountTocoins(46, [
  25
  10
  5
  2
  1
])

Sample Output:

[25, 10, 10, 1]

Live Demo :

See the Pen coffeescript-exercise-18 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus.



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://www.w3resource.com/coffeescript-exercises/coffeescript-exercise-18.php