Click here to Skip to main content
13,253,507 members (51,590 online)
Rate this:
Please Sign up or sign in to vote.
See more:
I created a function that will return the VAT percentage from Total and VAT amount..
My Function is :-
public decimal vatRsToPer(decimal vatAmt, decimal totalAmt)
                decimal rupees;
                rupees = decimal.Multiply(vatAmt, 100m);
                rupees = decimal.Divide(rupees, totalAmt);
                return rupees;
            catch {
                return 0m;

Problem is, suppose the total amt is "2400.00" and VAT% is "4", that means the VAT Rupees is "96.00"..
If i want to get the percentage of the VAT from that VAT rupees "96.00" and Total rupees "2496.00"(which is including VAT rupees). then my function return "3.85" not "4"..
Please Help me, Where I did wrong....

Every Suggestion will be appreciated...
Posted 2-Apr-13 4:04am
ryanb31 2-Apr-13 9:09am
Are you saying you want to round up?
Jayanta Chatterjee 2-Apr-13 9:13am
No no...
I Solved it.
Just added this line at the top:-
totalAmt = decimal.Subtract(totalAmt, vatAmt);
Thanks for quick reply...
Kenneth Haugland 2-Apr-13 9:16am
Em, I might have gotten this wrong but if you have Price + VAT than you have 104 % of the total price. MEaning 2496/1.04 = 2400 and (2496/104)*4=96.
Jayanta Chatterjee 6-Apr-13 12:09pm
Thanks for Your suggestion...
Its good..

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

Please Help me, Where I did wrong....
rupees = decimal.Divide(rupees, totalAmt);

Should be:
rupees = decimal.Divide(rupees, totalAmt-vatAmt);
Jayanta Chatterjee 2-Apr-13 9:14am
Thanks Sir.....
CPallini 2-Apr-13 9:18am
You are welcome.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy |
Web03 | 2.8.171114.1 | Last Updated 2 Apr 2013
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100