RECURSIVECHANGE(M, c, d) 1 if M = 0 2 return 0 3 bestNumCoins 1 4 for i 1 to d 5 if M ci 6 numCoins RECURSIVECHANGE(M − ci, c, d) 7 if numCoins + 1 < bestNumCoins 8 bestNumCoins numCoins + 1 9 return bestNumCoins
recursivechange ( M , C , D ) 1 ถ้า m = 0 = 0 2 คืน 3 bestnumcoins 1 4 ชั้น 1 D 5 ถ้า M CI 6 numcoins recursivechange ( m − CI , C , D ) 7 ถ้า numcoins 1 < bestnumcoins 8 bestnumcoins numcoins 1 9 กลับ bestnumcoins