Tradutor de semáforo de bandeiras
HELLO vira cinco pares de posições de bandeira, um por letra: o E, por exemplo, é L:HIGH+R:DOWN, bandeira esquerda no alto e direita para baixo. As palavras são separadas por uma barra, e posições coladas voltam a ser letras. 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
- Texto
- HELLO
- Modo de cálculo
- Encode
- Codificação
- flag_semaphore
- Comprimento da entrada
- 5
- Comprimento da saída
- 78
Este tradutor de semáforo de bandeiras converte texto simples em nomes de posição de braço do semáforo internacional de bandeiras, e decodifica esses tokens de posição de volta a letras e dígitos legíveis, usando uma tabela fixa e determinística. O modo de codificação mapeia cada letra e dígito para uma pose de mão esquerda e mão direita, escrita como L:POS+R:POS, une letras sucessivas com um único espaço, e separa palavras com uma barra, para que frases com várias palavras permaneçam inequívocas. O modo de decodificação reverte o processo: lê apenas tokens de posição bem formados, normaliza separadores flexíveis, consulta cada par na mesma tabela, e falha claramente quando um caractere ou pose é desconhecido.
O que é o semáforo de bandeiras e o que esta ferramenta retorna
O semáforo de bandeiras é o alfabeto visual padrão de duas bandeiras, usado no mar, no escotismo, e no ensino de história da sinalização em sala de aula. Um sinalizador segura uma bandeira em cada mão e coloca cada braço em uma de um pequeno conjunto de posições nomeadas ao redor do corpo: baixo, baixa, fora, alta, cima, e as duas poses cruzadas usadas quando as duas bandeiras ficam do mesmo lado.
Essas combinações soletram as letras latinas de A a Z e os dígitos de uso duplo de zero a nove, que compartilham poses de letra selecionadas na tabela clássica. Esta página implementa esse mapeamento público como tokens de texto simples no formato L:POS+R:POS, para que todo resultado seja copiável, pesquisável, e adequado para testes automatizados sem reconhecimento de imagem.
O modo de codificação coloca as letras em maiúsculas, expande cada caractere suportado para suas posições esquerda e direita, une as letras com um espaço, e une as palavras com espaço-barra-espaço, para que um humano ou máquina possa distinguir os limites de palavra sem cronometrar quadros de vídeo. O modo de decodificação aceita a mesma convenção textual, tolera pontuação flexível entre os lados L e R, e reconstrói letras maiúsculas (preferindo letras a rótulos de dígito quando uma pose tem uso duplo).
Se você precisa de análise de vídeo ao vivo, semáforo mecânico de torre, ou poses do silabário de bandeiras japonês, use uma ferramenta especializada; esta página é apenas para o contrato de codificação e decodificação textual que professores, cadetes, e autores de testes compartilham.
Onde um tradutor de semáforo de bandeiras se encaixa em aprendizado, patrimônio e testes
Estudantes encontram o semáforo de bandeiras quando estudam história marítima, se preparam para insígnias de sinalização escoteira, ou resolvem exercícios cronometrados de sala de aula que exigem converter palavras curtas nas duas direções, sem gráficos de papel. Grupos de patrimônio naval e educadores de museu usam um codificador de texto para verificar frases de prática antes de uma demonstração ao vivo, e um decodificador para verificar a cópia depois de uma sessão.
Designers de quebra-cabeças e autores de jogos geram enigmas de semáforo determinísticos para salas de fuga e desafios estilo CTF, em que a mesma pista deve sempre codificar da mesma forma. Combine-a com outros auxiliares de codificação de texto ao montar um pequeno laboratório de utilitários gratuitos e determinísticos para educação e operações.
Casos de uso
Prática de escoteiros e cadetes
Codifique frases de estudo e decodifique cópias de prática para exercícios de semáforo de bandeiras e preparação de insígnias, sem um gráfico de posições em papel.
Quebra-cabeças e demonstrações de sala de aula
Gere pistas de semáforo determinísticas para salas de fuga, CTFs, e aulas ao vivo, com uma regra compartilhada de separador de palavra.
Perguntas frequentes
Quais caracteres são suportados?
Letras A–Z (sem diferenciar maiúsculas de minúsculas na codificação) e dígitos 0–9. Os dígitos compartilham as poses clássicas de uso duplo (1 com A até 9 com I, e 0 com K).
Como palavras e posições são escritas?
Cada letra é L:POS+R:POS, com posições DOWN, LOW, OUT, HIGH, UP, ACROSS_LOW, ou ACROSS_HIGH. As letras são separadas por um único espaço. As palavras são separadas por espaço-barra-espaço ( / ).
O resultado é determinístico?
Sim. O mesmo texto e o mesmo modo sempre produzem o mesmo resultado, sem rede, aleatoriedade ou comportamento dependente de data.
Como os números são sinalizados no semáforo de bandeiras?
Os dígitos de 0 a 9 compartilham posições com algumas letras da tabela clássica. Na codificação, cada dígito recebe sua postura; ao decodificar uma postura que serve para os dois, a ferramenta devolve a letra.
A ferramenta lê semáforo a partir de vídeo ou foto?
Não. Ela trabalha só com posições escritas como texto, no formato L:POS+R:POS. Para analisar vídeo, semáforo de torre mecânica ou o silabário japonês com bandeiras, é preciso uma ferramenta especializada.
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/enc/semaphore \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HELLO"}'const res = await fetch("https://api.kit.forhosting.com/enc/semaphore", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HELLO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/semaphore",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HELLO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/semaphore", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HELLO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HELLO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/semaphore", 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
{
"text": "HELLO"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.semaphore",
"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
O mecanismo nunca chama uma rede, nunca amostra aleatoriedade, e nunca depende do relógio do calendário, então a mesma entrada e o mesmo modo sempre produzem o mesmo resultado no navegador e pela API. Verificações típicas incluem a codificação de HELLO em cinco tokens de posição, a decodificação dessa string de volta para HELLO, e a rejeição de símbolos não suportados com invalid_input. Use gratuitamente nesta página para prática de escoteiros, demonstrações de história naval, e design de quebra-cabeças, ou chame a API por US$ 0,002 a cada solicitação bem-sucedida quando precisar de transformações de semáforo reproduzíveis em CI e serviços de backend.
O que é o semáforo de bandeiras e o que esta ferramenta retorna
A resposta em JSON sempre inclui result para a string transformada, mode ecoando encode ou decode, encoding fixado em flag_semaphore, e input_length mais output_length, para que testes automatizados possam verificar tamanhos sem reanalisar o payload. Não há salto silencioso de caracteres desconhecidos nem tabela de extensão privada: ou todo símbolo mapeia de forma limpa, ou a solicitação falha com invalid_input.
Como texto e modo são interpretados e como os resultados permanecem reproduzíveis
O encode remove espaços em branco externos para a divisão de palavras, trata sequências de espaço em branco internas como separadores de palavra, e rejeita qualquer caractere que não seja A–Z ou 0–9, com uma mensagem que nomeia o símbolo ruim. O decode rejeita tokens que não podem ser normalizados para um par de posições esquerda e direita, rejeita nomes de pose desconhecidos fora dos sete rótulos permitidos, e rejeita pares de posição que não aparecem na tabela reversa, novamente nomeando o token não decodificável. O campo de payload preferido é text, com os aliases input, value, s e message, para que formulários, strings de consulta e clientes de SDK possam reutilizar o mesmo contrato sem renomear colunas. Mode assume encode por padrão e aceita decode explicitamente; os aliases op, direction e action mapeiam para a mesma alternância, para scripts que já usam esses nomes. Como cada ramo é uma busca pura em tabela e montagem de string, dois clientes com o mesmo texto e modo recebem resultados idênticos byte a byte entre versões do Worker, enquanto o alfabeto permanecer fixo. Combine a execução gratuita no navegador desta página com a API paga quando precisar do mesmo resultado matemático dentro de um pipeline automatizado, sem reimplementar as tabelas de bandeiras você mesmo. Entradas inválidas retornam invalid_input e não são cobradas, o que mantém a validação exploratória barata, enquanto as transformações bem-sucedidas permanecem com um preço fixo de US$ 0,002 para quem integra o mesmo contrato em quizzes, motores de jogo, e geradores de documentação.
Onde um tradutor de semáforo de bandeiras se encaixa em aprendizado, patrimônio e testes
Nesta página o trabalho roda inteiramente no seu navegador; pela API, cada consulta bem-sucedida custa US$ 0,002, a validação com falha não é cobrada, e nada é armazenado depois que a resposta é devolvida. Essa divisão — exploração interativa gratuita e uma API paga e idêntica — segue o padrão do resto do catálogo tier A do KIT e permite passar de uma demonstração de quadro branco para um pipeline automatizado sem mudar o resultado codificado.
Casos de integração
Fixtures golden e de CI
Verifique pares de codificação e decodificação em testes automatizados, para que nomes de posição e separadores nunca divirjam silenciosamente.
Perguntas técnicas
Quanto custa o tradutor de semáforo de bandeiras?
É gratuito no navegador, nesta página. Pela API, uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.
Quais modos são suportados?
mode=encode (padrão) transforma texto simples em tokens L:POS+R:POS. mode=decode transforma uma string de posições de volta em texto.