Pular para o conteúdo
Avaliador
Problemas
Sobre
Entrar
Entrar
Todas as categorias
Desafios de programação
Resolva problemas de raciocínio e lógica mais elaborados
Iniciante
Fácil
Médio
Difícil
Difícil
Curva de Hilbert
A curva de Hilbert é um fractal para preencher o espaço, onde cada iteração irá ficar mais detalhada.5 primeiras iterações da curva de Hilbert.Para ser implementada com código pode-se utilizar uma definição recursiva a partir das regras abaixo (L-sistema).Alfabeto : A, BConstantes : F + −Axioma : ARegras de produção:A → +BF−AFA−FB+B → −AF+BFB+FA−Aqui, "F" significa "avançar", "+" significa "virar à esquerda 90°", "-" significa "virar à direita 90°" (veja gráficos de tartaruga), e "A" e "B" são ignorados durante o desenho.A iteração 0 você chama A e não executa nenhuma outra função, ficando "+F-F-F+", com uma caneta você à coloca no papel e segue as etapas, começando olhando para a direita:+ Vire à esquerda 90ºF Frente- Vire à direita 90ºF Frente - Vire à direita 90ºF Frente+ Vire à esquerda 90ºAo final você tem a primeira iteração que é um U de ponta cabeça.Para as próximas iterações você continua chamando recursivamente as funções entre si, criando uma sequência de etapas cada vez maior na medida que aumenta-se o limite da recursão, mas as etapas elementares são as mesmas.Formatação da saídaVeja nos exemplos de teste que deve-se utilizar os caracteres especiais para desenhar a curva, que são:Linha reta horizontal: ─Linha rata vertical: │Canto superior esquerdo: ┌Canto superior direito: ┐Canto inferior esquerdo: └Canto inferior direito: ┘Não deve escrever mais nada além dos caracteres da curva, nem um espaço a mais no final de cada linha.