Tiempos parciales de cronómetro
Pegue las marcas acumuladas del cronómetro y obtenga lo que duró cada vuelta: tres parciales que terminan en 100 segundos dan vueltas de 30, 35 y 35. También verá el total, la vuelta más rápida, la más lenta y el promedio. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Parciales
- 30, 65, 100
- Total
- 100
- Cantidad
- 3
- Inicio
- 0
- Duraciones
- 30, 35, 35
Los tiempos parciales de un cronómetro casi siempre se anotan como marcas acumuladas: la lectura del reloj al pulsar cada parcial, no la duración de esa vuelta concreta. Entrenadores, paneles de cronometraje y aplicaciones de entrenamiento necesitan la vista inversa—cuánto duró cada tramo—para ordenar intervalos, comparar esfuerzos y graficar el ritmo sin una hoja de cálculo. Esta herramienta de tiempos parciales acepta una lista ordenada de marcas acumuladas más un desplazamiento inicial opcional, resta valores sucesivos y devuelve la duración de cada vuelta junto con el tiempo total, la vuelta más rápida y la más lenta, y el promedio. El algoritmo es aritmética pura sobre sus números: no consulta el reloj del sistema, no inventa marcas faltantes y rechaza secuencias decrecientes para que un error tipográfico no se convierta en una vuelta negativa.
De parciales acumulados a duraciones de vuelta
Un parcial acumulado es el tiempo total transcurrido desde un origen fijo—habitualmente el disparo o el instante en que arrancó el cronómetro—hasta el momento en que se registra ese parcial. Si un corredor marca a los treinta, sesenta y cinco y cien segundos, esos tres números son marcas acumuladas, no longitudes de vuelta. La duración de la primera vuelta es la primera marca menos el desplazamiento de inicio (cero cuando la lista empieza en el disparo).
Cada vuelta posterior es la diferencia entre esa marca y la anterior, de modo que la secuencia pasa a ser treinta, treinta y cinco y treinta y cinco segundos. Esta calculadora de tiempos parciales aplica ese paso de diferencias una sola vez, en el orden de la lista, y nunca reordena ni vuelve a cronometrar las marcas frente a un reloj en vivo.
El start opcional cubre el caso en que la primera marca no es relativa a cero—por ejemplo cuando un intervalo parcial comienza en una lectura intermedia del panel.
Dónde la conversión de duraciones de vuelta aporta valor
Entrenadores de atletismo y natación pegan los parciales del panel tras una serie y necesitan la duración vuelta a vuelta sin reconstruir una hoja de cálculo en cada manga. Clubes de running y triatlón exportan marcas acumuladas de GPS o cronómetro manual y desean banderas de intervalo más rápido y más lento para mensajes de feedback. Sitios de contenido fitness que compiten por tiempos parciales de cronómetro o calculadora de duración de vuelta obtienen una herramienta en vivo cuyas respuestas coinciden byte a byte con la automatización de prepago.
Los laboratorios de física que enseñan intervalos a velocidad constante pueden corregir tablas de cronómetro de estudiantes frente a un oráculo determinista. Mantenga las listas bajo el máximo documentado, fije las duraciones redondeadas en las pruebas y obtendrá tablas de vueltas reproducibles para apps de coaching, plugins LMS y workers en el borde sin levantar un servicio de reloj propio.
Qué puede hacer con ella
Entrenamiento y hojas de mangas
Pegue los parciales acumulados del panel tras una serie y reciba la duración de cada vuelta más los índices de la más rápida y la más lenta para feedback inmediato.
Exportaciones de apps de entrenamiento
Convierta marcas acumuladas de GPS o cronómetro en duraciones de vuelta ordenadas antes de guardar series de ritmo o graficar el esfuerzo por intervalo.
Laboratorios de cronometraje en aula
Corrija tablas de cronómetro de estudiantes con un oráculo determinista que rechaza marcas decrecientes y nunca usa el reloj del servidor.
Preguntas frecuentes
¿Cómo convierto parciales acumulados de cronómetro en tiempos de vuelta?
Envíe splits como una lista ordenada de marcas acumuladas. La vuelta 1 es la primera marca menos start (por defecto 0); cada vuelta posterior es la diferencia respecto a la marca anterior.
¿Qué unidades debo usar para las marcas temporales?
Cualquier unidad numérica coherente sirve—segundos, milisegundos o minutos. La calculadora solo diferencia sus números y devuelve duraciones en la misma unidad que usted suministró.
¿Qué ocurre si mis parciales retroceden?
Una marca posterior menor que la anterior no es válida en una serie acumulada.
¿Puedo fijar un desplazamiento de inicio distinto de cero?
Debe ser no negativo y no mayor que el primer parcial.
¿Qué muestra el resultado además de cada vuelta?
El tiempo total, la vuelta más rápida y la más lenta con su posición, y la vuelta promedio. Con tres marcas que terminan en 100 segundos, la vuelta 1 es la más rápida con 30 y la 2 la más lenta con 35.
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/date/stopwatch-split-times \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"splits":[30,65,100]}'const res = await fetch("https://api.kit.forhosting.com/date/stopwatch-split-times", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"splits": [
30,
65,
100
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/stopwatch-split-times",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"splits": [
30,
65,
100
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/stopwatch-split-times", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"splits":[30,65,100]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"splits":[30,65,100]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/stopwatch-split-times", 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
{
"splits": [
30,
65,
100
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.stopwatch_split_times",
"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
De parciales acumulados a duraciones de vuelta
Como las unidades se cancelan en restas sucesivas, puede enviar segundos, décimas, milisegundos u otra escala numérica coherente; el endpoint devuelve duraciones en la misma unidad que usted suministró. Si alguna marca posterior es menor que la anterior, la lista no es una serie acumulada válida y la petición falla con invalid_input en lugar de fabricar una duración negativa que rompería gráficos de ritmo y correctores automáticos.
Contrato de entrada, campos de respuesta y validación
Cada valor debe ser no negativo. La secuencia debe ser no decreciente: marcas consecutivas iguales significan una vuelta de longitud cero, aceptada por completitud cuando dos pulsaciones caen en la misma lectura. El start opcional vale cero por defecto y debe ser no negativo y no mayor que el primer parcial. Todas las salidas numéricas se redondean a doce decimales para que goldens y SDKs sean estables entre runtimes. Envíe un cuerpo JSON con splits como un array no vacío de números finitos, o como una cadena separada por comas, espacios o puntos y comas en formularios de texto. Los alias times, timestamps, cumulative y marks apuntan a splits; offset, t0 y begin apuntan a start. En caso de éxito el cuerpo devuelve el start normalizado y los splits redondeados, luego count, durations como array de longitudes de vuelta en orden, total como el último parcial menos start, fastest_duration y slowest_duration, índices one-based fastest_lap y slowest_lap (en empates gana la primera aparición) y average_duration. Listas vacías, splits ausentes, valores no finitos, marcas negativas, un start posterior al primer parcial y secuencias decrecientes provocan invalid_input y no se facturan. La ruta gratuita del navegador usa el mismo módulo puro que la API, de modo que demos de aula y automatizaciones de producción no discrepan con las mismas entradas.
Dónde la conversión de duraciones de vuelta aporta valor
Las canalizaciones de datos deportivos convierten marcas acumuladas de proveedores en duraciones por segmento antes de guardar series de ritmo; una API parse pequeña evita montar una pila de cronometraje completa para una diferencia lineal. Como la implementación es pure parse de nivel A sin tokens de modelo ni red saliente, cada llamada correcta cuesta el precio base publicado $0.002, la validación fallida no consume saldo y los resultados dependen solo de los números que usted envía.
Preguntas técnicas
¿Cuánto cuesta la calculadora de tiempos parciales de cronómetro?
La herramienta del navegador es gratuita. Las peticiones API usan saldo KIT prepago a $0.002 por llamada correcta; la entrada inválida no se factura.