Décomposition des nombres
NumberDecompose exprime un nombre en multiples d'unités, comme les dénominations de devises.
La monnaie bahaméenne (BSD) utilise les dénominations de billets de banque suivants.
In[1]:=
denominations = {100, 50, 20, 10, 5, 3, 2, 1, 1/2};
Le BSD permet de diviser un montant donné en billets de plusieurs façons par rapport à d'autres monnaies, grâce à la présence du billet BSD 3. Voici les quotients entre les coupures consécutives
In[2]:=
Divide @@@ Subsequences[denominations, {2}]
Out[2]=
Dans la plupart des systèmes monetaires, seuls les quotients 2 et 5/2 sont présents, mais dans le cas présent, il y a aussi 5/3 et 3/2.
In[3]:=
Divide @@@ Subsequences[denominations, {2}];
BarChart[%]
Out[3]=
Décomposez un montant de dollars bahaméens dans les coupures disponibles.
In[4]:=
NumberDecompose[598.50, denominations]
Out[4]=
Récupérez le montant initial en utilisant NumberCompose.
In[5]:=
NumberCompose[{5, 1, 2, 0, 1, 1, 0, 0, 1.}, denominations]
Out[5]=
Voici le montant obtenu avec un billet de banque de chaque dénomination.
In[6]:=
NumberCompose[Table[1, Length@denominations], denominations] // N
Out[6]=