Working with percentages in C#
-
I have the following code: double numdaysPercentage; numdaysPercentage = 14/30; I get an answer like 0.0. I should get an answer like .4666667 Can someone tell me what I am doing wrong.
If you divide by an int, you get an int. double n = 14/30.0; will work or double n = 14/(double)30;
Christian Graus Please read this if you don't understand the answer I've given you "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
-
I have the following code: double numdaysPercentage; numdaysPercentage = 14/30; I get an answer like 0.0. I should get an answer like .4666667 Can someone tell me what I am doing wrong.
You are doing integer division, and 14/30 is indeed 0. On the other hand, 14.0/30 will give you what you are looking for.
Cheers, Vikram.
The hands that help are holier than the lips that pray.
-
I have the following code: double numdaysPercentage; numdaysPercentage = 14/30; I get an answer like 0.0. I should get an answer like .4666667 Can someone tell me what I am doing wrong.
The suggestions above are good, you can also tag the numbers with an 'd' to indicate they are doubles. (Or 'f' for floats)
double n = 14d / 30d;
Simon