web-dev-qa-db-fra.com

Calcul en pourcentage

Je travaille dans le concept de barre de progrès dans ASP.NET MVC 2. Ici, j'ai une DropDownList qui a 10 valeurs. Je veux calculer le pourcentage de la barre de progression, par ex. 10 valeurs de DropDownList et je reçois une requête qui renvoie la valeur 2. Donc, sur 10 valeurs, j'en reçois 2. "20% completed" doit être affiché. Comment effectuer ce calcul

52
RobinHood

(current / maximum) * 100. Dans ton cas, (2 / 10) * 100.

64
Nicolas Repiquet

Utilisation de Math.Round():

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

ou arrondir manuellement:

int percentComplete = (int)(0.5f + ((100f * complete) / total));
71
Sogger

Avec le formatage de chaîne C #, vous pouvez éviter la multiplication par 100 car cela raccourcirait le code et le rendrait plus propre, notamment en raison du nombre réduit de crochets et de l’arrondi du code.

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

// Sortie - 16.67%

33
Habeeb

Mathématiquement, pour obtenir le pourcentage de deux nombres:

percentage = (yourNumber / totalNumber) * 100;

Et aussi, pour calculer à partir d'un pourcentage:

number = (percentage / 100) * totalNumber;
7
Sonador

Vous pouvez conserver le pourcentage sous forme décimale (value \ total) et ensuite, lorsque vous voulez rendre un rendu à un humain, vous pouvez utiliser Habeeb'sanswer ou en utilisant interpolation de chaîne vous pourriez avoir quelque chose d'encore plus propre :

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

ou

//Calculate percentage earlier in code
decimal percentage = (decimal)value / total;
...
//Now render percentage
var displayPercentage = $"{percentage:P}";
4
Bronumski