Calcular porcentajes

¿Cómo se calcula el porcentaje entre dos valores (valor inicial - valor final) si el valor inicial o final es cero?. Yo utilizo la siguiente fórmula:
((valor_final x 100 / valor_inicial)-100) / 100;
pero cuando el valor inicial es cero, la formula no tiene solución.
Por ejemplo calcular la variación en tanto por ciento entre valor_inicial=0 y valor_final=25.

3 Respuestas

Respuesta

Cuando el valor inicial es 0, matemáticamente no es posible calcular una variación porcentual porque implicaría dividir entre cero. En ese caso no existe un porcentaje de crecimiento definido.

Si el valor inicial es distinto de cero, puedes usar esta fórmula:

Variación (%) = ((Valor final - Valor inicial) / Valor inicial) × 100

Por ejemplo:

  • De 100 a 125 → ((125 - 100) / 100) × 100 = 25%
  • De 80 a 60 → ((60 - 80) / 80) × 100 = -25%

Cuando el valor inicial es 0, lo más recomendable es tratar ese caso como una excepción en el programa (por ejemplo con un IF o una validación previa) y mostrar un mensaje indicando que el porcentaje no puede calcularse porque no existe una referencia inicial.

Es una práctica habitual para evitar errores de división entre cero y obtener resultados más claros.

Respuesta
2
Añade a la fórmula una opción IF (o Si) donde compruebe que el valor inicial no sea igual a cero y si lo es, simplemente es convertir el valor final a %.
Por ejemplo:
Valor inicial=0
Valor final=3
Si el valor inicial=0 entonces el valor final es 300%
Respuesta
1
Si el valor inicial es cero cualquier porcentaje será cero, y si el valor final es cero bien es porque el valor inicial es cero o porque el porcentaje calculado es el cero por ciento.
Si piensas el porcentaje como que proporción representa una cantidad POR respecto una cantidad Y te darás cuenta que si el valor inicial es cero es como plantearse que proporción representa Y de nada.
Una fórmula más sencilla es :
100 x valor_final / valor_inicial
De donde se deduce que no hay solución si el valor inicial es cero ( de hecho el único porcentaje de 0 es cero) y si el valor final es cero la fórmula da cero para cualquier valor inicial (excepto en el caso de ser también cero el valor inicial).
Se puede concluir pues que el porcentaje entre dos valores es cero si y solo si el valor inicial es cero.
Comentarte por último que no entiendo lo que resulta de tu fórmula, si simplificas te darás cuenta que resulta :
(valor_final / valor_inicial) - 1
Que es el tanto por uno del valor inicial respecto el final y lo que tu planteas creo haber entendido que era el tanto por ciento del valor final respecto el inicial

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas