toms448, a Fortran77 code which implements ACM toms algorithm 448, which determines the number of partitions of an integer into parts restricted to a given set.
This routine can be used to solve various problems in counting the number of ways of making change with a given set of coin denominations, for instance.
The text of many ACM TOMS algorithms is available online through ACM: https://www.acm.org/pubs/calgo or NETLIB: https://www.netlib.org/toms/index.html.
The information on this web page is distributed under the MIT license.
toms448 is available in a Fortran77 version.