Tempos parciais de cronômetro
Cole as marcas acumuladas do cronômetro e receba quanto durou cada volta: três parciais que terminam em 100 segundos viram voltas de 30, 35 e 35. Você também vê o total, a volta mais rápida, a mais lenta e a média. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Parciais
- 30, 65, 100
- Total
- 100
- Quantidade
- 3
- Início
- 0
- Durações
- 30, 35, 35
Os tempos parciais de um cronômetro quase sempre são anotados como marcas acumuladas: a leitura do relógio ao pressionar cada parcial, não a duração daquela volta específica. Treinadores, painéis de cronometragem e aplicativos de treino precisam da visão oposta—quanto durou cada segmento—para ranquear intervalos, comparar esforços e traçar o ritmo sem uma planilha. Esta ferramenta de tempos parciais aceita uma lista ordenada de marcas acumuladas mais um deslocamento inicial opcional, subtrai valores sucessivos e devolve a duração de cada volta junto com o tempo total, a volta mais rápida e a mais lenta, e a média. O algoritmo é aritmética pura sobre os seus números: não consulta o relógio do sistema, não inventa marcas faltantes e rejeita sequências decrescentes para que um erro de digitação não se torne uma volta negativa.
De parciais acumulados a durações de volta
Um parcial acumulado é o tempo total decorrido desde uma origem fixa—em geral o tiro de largada ou o instante em que o cronômetro arrancou—até o momento em que esse parcial é registrado. Se um corredor marca aos trinta, sessenta e cinco e cem segundos, esses três números são marcas acumuladas, não comprimentos de volta. A duração da primeira volta é a primeira marca menos o deslocamento de início (zero quando a lista começa na largada).
Cada volta posterior é a diferença entre essa marca e a anterior, de modo que a sequência passa a ser trinta, trinta e cinco e trinta e cinco segundos. Esta calculadora de tempos parciais aplica esse passo de diferenças uma única vez, na ordem da lista, e nunca reordena nem recronometra as marcas contra um relógio ao vivo. O start opcional cobre o caso em que a primeira marca não é relativa a zero—por exemplo quando um intervalo parcial começa em uma leitura intermediária do painel.
Onde a conversão de duração de volta agrega valor
Treinadores de atletismo e natação colam os parciais do painel após uma série e precisam da duração volta a volta sem reconstruir uma planilha a cada bateria. Clubes de corrida e triatlo exportam marcas acumuladas de GPS ou cronômetro manual e querem flags do intervalo mais rápido e mais lento para mensagens de feedback. Sites de conteúdo fitness que ranqueiam por tempos parciais de cronômetro ou calculadora de duração de volta ganham uma ferramenta ao vivo cujas respostas coincidem byte a byte com a automação pré-paga.
Laboratórios de física que ensinam intervalos a velocidade constante podem corrigir tabelas de cronômetro de alunos contra um oráculo determinístico. Mantenha as listas abaixo do máximo documentado, fixe as durações arredondadas nos testes e obtenha tabelas de voltas reproduzíveis para apps de coaching, plugins LMS e workers na borda sem levantar um serviço de relógio próprio.
Casos de uso
Treinamento e folhas de bateria
Cole os parciais acumulados do painel após uma série e receba a duração de cada volta mais os índices da mais rápida e da mais lenta para feedback imediato.
Exportações de apps de treino
Converta marcas acumuladas de GPS ou cronômetro em durações de volta ordenadas antes de armazenar séries de ritmo ou traçar o esforço por intervalo.
Laboratórios de cronometragem em sala
Corrija tabelas de cronômetro de alunos com um oráculo determinístico que rejeita marcas decrescentes e nunca usa o relógio do servidor.
Perguntas frequentes
Como converto parciais acumulados de cronômetro em tempos de volta?
Envie splits como uma lista ordenada de marcas acumuladas. A volta 1 é a primeira marca menos start (padrão 0); cada volta posterior é a diferença em relação à marca anterior.
Quais unidades devo usar para as marcas temporais?
Qualquer unidade numérica coerente funciona—segundos, milissegundos ou minutos. A calculadora apenas diferencia os seus números e devolve durações na mesma unidade que você forneceu.
E se meus parciais retrocederem?
Uma marca posterior menor que a anterior é inválida em série acumulada.
Posso definir um deslocamento de início diferente de zero?
Deve ser não negativo e não maior que o primeiro parcial.
O que o resultado mostra além de cada volta?
O tempo total, a volta mais rápida e a mais lenta com a posição de cada uma, e a média das voltas. Com três marcas que terminam em 100 segundos, a volta 1 é a mais rápida, com 30, e a 2 a mais lenta, com 35.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
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)Exemplo de requisição
{
"splits": [
30,
65,
100
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.stopwatch_split_times",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
De parciais acumulados a durações de volta
Como as unidades se cancelam em subtrações sucessivas, você pode enviar segundos, décimos, milissegundos ou qualquer outra escala numérica coerente; o endpoint devolve durações na mesma unidade que você forneceu. Se alguma marca posterior for menor que a anterior, a lista não é uma série acumulada válida e a solicitação falha com invalid_input em vez de fabricar uma duração negativa que quebraria gráficos de ritmo e corretores automáticos.
Contrato de entrada, campos de resposta e validação
Cada valor deve ser não negativo. A sequência deve ser não decrescente: marcas consecutivas iguais significam uma volta de comprimento zero, aceita por completude quando dois toques caem na mesma leitura. O start opcional vale zero por padrão e deve ser não negativo e não maior que o primeiro parcial. Todas as saídas numéricas são arredondadas a doze casas decimais para que goldens e SDKs permaneçam estáveis entre runtimes. Envie um corpo JSON com splits como um array não vazio de números finitos, ou como uma string separada por vírgulas, espaços ou ponto e vírgula em formulários de texto. Os aliases times, timestamps, cumulative e marks mapeiam para splits; offset, t0 e begin mapeiam para start. Em caso de sucesso o corpo ecoa o start normalizado e os splits arredondados, depois retorna count, durations como array de comprimentos de volta em ordem, total como o último parcial menos start, fastest_duration e slowest_duration, índices one-based fastest_lap e slowest_lap (em empates vence a primeira ocorrência) e average_duration. Listas vazias, splits ausentes, valores não finitos, marcas negativas, um start além do primeiro parcial e sequências decrescentes geram invalid_input e não são faturadas. O caminho gratuito do navegador usa o mesmo módulo puro da API, de modo que demos de sala e automações de produção nunca discordam com as mesmas entradas.
Onde a conversão de duração de volta agrega valor
Pipelines de dados esportivos convertem marcas acumuladas de fornecedores em durações por segmento antes de armazenar séries de ritmo; uma API parse pequena evita montar uma pilha de cronometragem completa para uma diferença linear. Como a implementação é pure parse de nível A sem tokens de modelo e sem rede de saída, cada chamada bem-sucedida custa o preço base publicado US$ 0,002, a validação falha não consome saldo e os resultados dependem apenas dos números que você envia.
Perguntas técnicas
Quanto custa a calculadora de tempos parciais de cronômetro?
A ferramenta do navegador é gratuita. As solicitações API usam saldo KIT pré-pago a US$ 0,002 por chamada bem-sucedida; entrada inválida não é faturada.