Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Where should ROUND() be applied in complex calc
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9 SP1
Divers
Thread ID:
01396309
Message ID:
01396504
Vues:
66
This message has been marked as a message which has helped to the initial question of the thread.
Something I have found useful if you show any intermediate calculations to user, is to make sure that the internal value has been rounded to the same precision as the presented value. That way people can follow your calculations and get the same results that you do.

>Hi all
>
>There are some complex tax calculations to be performed. For eg. Excise is calculated on an abatement provided value of the Maximum Retail Price (MRP) of a products. Two more taxes are then calculated on this Excise amount. Assuming the client is going to ROUND() at 0 precision - no decimal places.
>
>Qty * MRP = Amount
>3 * 560.1257 = 1680.3771
>
>Amount - Abatement % = Assessable Value
>1680.3771 - (1680.3771 * 25 / 100) = 1260.282825
>
>% of Assessable Value = Excise
>1260.282825 * 4 / 100 = 50.411313
>
>% of Excise = Education Cess
>50.411313 * 2 / 100 = 1.00822626
>
>% of Excise = S&H Education Cess
>50.411313 * 1 / 100 = 0.50411313
>
>Assessable Value + Excise + Edu. + S&H = still more taxes to be added :)
>1260.282825 + 50.411313 + 1.00822626 + 0.50411313 = 1,312.20647739
>
>Except Qty and MRP, where is it mathematically suggest (if I may say so) that ROUND() be applied so that decimals are removed and set to the nearest integer
>
>Please advise.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform