Percentage calculation

2019-01-13 19:53发布

I am working in progress bar concept in ASP.NET MVC 2. Here i have a DropDownList which has 10 values. i want to calculate the percentage for progress bar, e.g. 10 values from DropDownList and i am having a query which returns the value 2. so, out of 10 values i am getting 2. "20 % completed" should be displayed.. How to do this calculation

5条回答
爷、活的狠高调
2楼-- · 2019-01-13 20:14

Using Math.Round():

int percentComplete = (int)Math.Round((double)(100 * complete) / total);

or manually rounding:

int percentComplete = (int)(0.5f + ((100f * complete) / total));
查看更多
Evening l夕情丶
3楼-- · 2019-01-13 20:14

Mathematically, to get percentage from two numbers:

percentage = (yourNumber / totalNumber) * 100;

And also, to calculate from a percentage :

number = (percentage / 100) * totalNumber;
查看更多
家丑人穷心不美
4楼-- · 2019-01-13 20:17

With C# String formatting you can avoid the multiplication by 100 as it will make the code shorter and cleaner especially because of less brackets and also the rounding up code can be avoided.

(current / maximum).ToString("0.00%");

// Output - 16.67%

查看更多
走好不送
5楼-- · 2019-01-13 20:20

You can hold onto the percentage as decimal (value \ total) and then when you want to render to a human you can make use of Habeeb's answer or using string interpolation you could have something even cleaner:

var displayPercentage = $"{(decimal)value / total:P}";

or

//Calculate percentage earlier in code
decimal percentage = (decimal)value / total;
...
//Now render percentage
var displayPercentage = $"{percentage:P}";
查看更多
仙女界的扛把子
6楼-- · 2019-01-13 20:29

(current / maximum) * 100. In your case, (2 / 10) * 100.

查看更多
登录 后发表回答