Calculadora de porcentaje de victorias
Un balance de 10 victorias, 4 derrotas y 2 empates da un porcentaje de .688, porque cada empate cuenta como media victoria: escriba el balance y obtenga la cifra de la tabla de posiciones. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Victorias
- 10
- Derrotas
- 4
- Empates
- 2
- Partidas
- 16
- % de victorias
- 0,688
- Porcentaje
- 68,8
- Visualización
- .688
La calculadora de porcentaje de victorias toma el registro de un equipo — victorias, derrotas y, cuando el deporte los permite, empates — y devuelve el porcentaje de victorias estándar que se usa en las tablas de clasificación. Los empates cuentan como media victoria, así que una temporada 10-4-2 no es lo mismo que una 10-4-0. Usted recibe la cifra clásica de tres decimales de la tabla de posiciones, el porcentaje equivalente, la forma de visualización tal como se imprime en los periódicos y la fórmula exacta utilizada, todo en una única llamada determinista.
Por qué los empates cuentan como media victoria
Muchas ligas — la NFL, la NHL antes de la era de los tiros decisivos, las clasificaciones de fútbol en algunos formatos, el ajedrez e incontables competiciones amateur — permiten que un partido termine en empate. Si simplemente se ignoraran los empates, un equipo con diez victorias, cuatro derrotas y dos empates quedaría valorado igual que uno con diez victorias y cuatro derrotas, lo que infravalora los dos partidos que no perdió.
La solución estándar, adoptada por las clasificaciones de las grandes ligas durante décadas, es contar cada empate como media victoria y media derrota. La calculadora de porcentaje de victorias aplica esa convención con exactitud: las victorias efectivas son las victorias más la mitad de los empates, y el divisor es la totalidad de los partidos jugados.
Un equipo 10-4-2 obtiene por tanto (10 + 1) ÷ 16 = .688, situado correctamente entre el club 10-4 con .714 y un hipotético 10-5-1 con .656, que es exactamente donde lo colocan sus resultados. El resultado es el número que aparece en las clasificaciones impresas, redondeado a tres decimales para que .643 signifique lo mismo en todas partes, en cada liga y en cada sitio.
Casos límite y cuándo el cálculo no está definido
Un porcentaje de victorias solo tiene sentido cuando se ha jugado al menos un partido. Todo lo demás funciona como cabría esperar: un equipo sin victorias con derrotas devuelve .000, una temporada perfecta devuelve 1.000 y una temporada compuesta enteramente de empates devuelve exactamente .500, que es la propiedad elegante de la convención de la media victoria. Los deportes sin empates — béisbol, baloncesto, la mayoría de los formatos modernos de hockey — simplemente omiten el campo de empates, y la fórmula se reduce a victorias divididas entre partidos jugados.
Quienes suelen llamarla son generadores de tablas de posiciones que ordenan equipos por la cifra devuelta, bases de datos históricas que verifican un porcentaje citado contra el registro subyacente y herramientas periodísticas que necesitan la forma clásica de tres decimales para imprenta.
Como el cálculo es determinista — sin red, sin reloj, sin azar — la misma entrada produce siempre la misma salida, que es exactamente lo que uno quiere de un número que decide clasificaciones de playoffs y aparece bajo los nombres de los equipos en la tabla de un periódico.
Qué puede hacer con ella
Comparar equipos entre deportes con empates
Valore con justicia una temporada 10-4-2 de un equipo de la NFL frente a una 10-4 de béisbol dejando que los empates cuenten como media victoria.
Validar un registro histórico antes de publicarlo
Compruebe que un porcentaje de victorias citado coincide con las victorias, derrotas y empates de su conjunto de datos antes de que llegue a un artículo o informe.
Preguntas frecuentes
¿Cuánto cuesta?
También es gratis ejecutarlo en su navegador en esta página.
¿Cómo se tratan los empates?
Cada empate cuenta como media victoria y media derrota, la convención estándar en las clasificaciones de liga. La fórmula es (victorias + 0.5 × empates) ÷ total de partidos.
¿Y si mi deporte no tiene empates?
Omita el campo de empates; por defecto es cero y la fórmula se reduce a victorias divididas entre partidos jugados.
¿Por qué tres decimales?
Es la convención de larga tradición en las tablas de posiciones, de modo que .643 no admite ambigüedad. El porcentaje equivalente con un decimal se devuelve junto a ella.
¿Puedo pasar los números como cadenas?
Sí. Se aceptan cadenas numéricas como "10" y se convierten, siempre que sean finitas y no negativas.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/sports/win-percentage-calc \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"wins":10,"losses":4}'const res = await fetch("https://api.kit.forhosting.com/sports/win-percentage-calc", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"wins": 10,
"losses": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/sports/win-percentage-calc",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"wins": 10,
"losses": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/sports/win-percentage-calc", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"wins":10,"losses":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"wins":10,"losses":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/sports/win-percentage-calc", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"wins": 10,
"losses": 4
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "sports.win_percentage_calc",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Cómo se calculan y se redondean los números
La fórmula es (victorias + 0.5 × empates) ÷ (victorias + derrotas + empates). La respuesta además devuelve las victorias, derrotas, empates y partidos totales utilizados, de modo que quien llama puede guardar el cálculo completo junto a sus propios registros y auditar después qué registro produjo cada cifra. La API devuelve el resultado en bruto redondeado a tres decimales, que es la convención de las tablas de posiciones, más la misma cifra expresada como porcentaje con un decimal y una cadena de visualización en el formato clásico — ".643" en lugar de "0.643" — tal como aparece en las páginas deportivas. Cada cantidad debe ser un número finito y no negativo; los valores negativos o ausentes se rechazan con un error tipado que nombra el campo responsable, y esas solicitudes fallidas no se facturan. Se aceptan cadenas numéricas como "10" y se convierten, lo que mantiene el endpoint cómodo para formularios y pipelines alimentados por CSV donde todo llega como texto.
Casos límite y cuándo el cálculo no está definido
Un registro 0-0-0 divide entre cero y, en lugar de inventar una respuesta, el endpoint devuelve un error tipado invalid_input que explica que el total de partidos es cero. El mismo código se ejecuta gratis en el navegador en esta página, así que usted puede comprobar un registro escribiéndolo antes de conectar la API a un pipeline de clasificaciones.
Casos de integración
Generar clasificaciones de liga
Alimente el registro de cada equipo al endpoint y ordene por la cifra de tres decimales devuelta, exactamente como hacen las clasificaciones oficiales.
Preguntas técnicas
¿Qué ocurre con un registro 0-0-0?
La solicitud se rechaza con un error invalid_input, porque un porcentaje de victorias no está definido cuando no se ha jugado ningún partido. Las solicitudes fallidas no se facturan.