HOWTO · Csharp

Cálculo de porcentaje en C#

Aprenderemos a calcular porcentajes en C# en este artículo.

En esta página

Un porcentaje expresa una parte como una cantidad de cada 100. En C#, divide el porcentaje entre 100 antes de multiplicarlo por el valor. Esta misma relación permite obtener la cantidad que se suma al aumentar un valor o se resta al disminuirlo.

Cómo entender los cálculos de porcentajes

Un porcentaje es una fracción de 100: el 15 % significa 15 de cada 100. Para calcular un porcentaje de un total, primero convierte el porcentaje en un número decimal dividiéndolo entre 100 y después multiplícalo por el total. Por ejemplo, el 15 % de 200 es (15 / 100) * 200, que da 30.

Mantén separada la cantidad del porcentaje y el total ajustado. Para aumentar un valor, calcula cuánto aumenta y suma esa cantidad al valor original. Para disminuirlo, calcula cuánto disminuye y réstalo. Esta distinción ayuda a no devolver solo el cambio cuando se pide el nuevo total.

Cálculo básico de porcentajes

La fórmula para calcular un porcentaje de un valor es:

amount = (percentage / 100) * total

Este programa completo de C# calcula el 15 % de 200. Usa double para que la división entre 100 conserve la parte fraccionaria del cálculo.

Ejecuta este ejemplo. El código y cualquier texto literal de la salida se conservan en inglés para mantener la paridad con el original:

El código y las etiquetas o salidas visibles de esta sección se mantienen en inglés.

using System;

class Program
{
    static void Main()
    {
        double total = 200;
        double percentage = 15;
        double amount = (percentage / 100) * total;

        Console.WriteLine($"15% of 200 is {amount}");
    }
}

Si quieres expresar una puntuación como porcentaje, divide los puntos obtenidos entre el total de puntos posibles y multiplica el resultado por 100. Por ejemplo, si una prueba tiene un máximo de 80 puntos, el denominador es 80. Dividir los puntos entre cuatro solo calcularía un promedio si se tratara de cuatro puntuaciones independientes, no el porcentaje respecto de un máximo conocido.

Cálculo del aumento porcentual

Para aumentar un valor original en un porcentaje, calcula la cantidad del aumento y súmala al valor original:

new value = original value + (increase percentage / 100 * original value)

Si el valor original es 100 y aumenta un 20 %, el aumento es 20 y el valor resultante es 120. Este programa muestra ambos valores para que puedas adaptar el cálculo a un precio, una cantidad u otro valor numérico.

El código y las etiquetas o salidas visibles de esta sección se mantienen en inglés.

using System;

class Program
{
    static void Main()
    {
        double originalValue = 100;
        double increasePercentage = 20;
        double increaseAmount = (increasePercentage / 100) * originalValue;
        double newValue = originalValue + increaseAmount;

        Console.WriteLine($"Increase amount: {increaseAmount}");
        Console.WriteLine($"New value: {newValue}");
    }
}

Cálculo de la disminución porcentual

Para disminuir un valor, calcula cuánto representa la disminución respecto del valor original y réstalo:

new value = original value - (decrease percentage / 100 * original value)

Por ejemplo, un descuento del 10 % sobre un precio de 150 equivale a 15, por lo que el precio final es 135. El porcentaje de descuento se aplica al precio original; restar el número del porcentaje directamente sería incorrecto, porque 10 no siempre equivale al 10 % del precio.

El código y las etiquetas o salidas visibles de esta sección se mantienen en inglés.

using System;

class Program
{
    static void Main()
    {
        double originalPrice = 150;
        double discountPercentage = 10;
        double discountAmount = (discountPercentage / 100) * originalPrice;
        double finalPrice = originalPrice - discountAmount;

        Console.WriteLine($"Discount amount: {discountAmount}");
        Console.WriteLine($"Final price: {finalPrice}");
    }
}

En aplicaciones financieras, usa decimal en lugar de double cuando importen la precisión decimal y el redondeo de moneda. Elige y aplica una regla de redondeo cuando la aplicación necesite un importe monetario; las fórmulas de porcentaje no determinan esa regla de negocio.

Preguntas frecuentes

¿Cómo calculo un porcentaje de un número en C#?

Divide el porcentaje entre 100 y multiplica el resultado por el número. Por ejemplo, el 15 % de 200 es (15 / 100) * 200, es decir, 30.

¿Cómo calculo un aumento porcentual?

Multiplica el valor original por el porcentaje de aumento dividido entre 100 para obtener la cantidad del aumento; después, súmala al valor original.

¿Cómo calculo una disminución porcentual o un descuento?

Multiplica el valor original por el porcentaje de disminución dividido entre 100 y resta esa cantidad del valor original.

¿Cómo calculo una puntuación como porcentaje?

Usa (marks earned / total possible marks) * 100. El denominador debe ser la puntuación máxima posible de esa misma prueba o conjunto de notas; el promedio de varias puntuaciones responde a una pregunta distinta.