Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

demon28

Quadrados recursivos

Mensagens Recomendadas

demon28    0
demon28

Boas pessoal,

Tenho uma questão, alguem sabe como ou alguma vez já fez uma figura usando quadrados recursivamente? Precisava fazerr quadrados usando recursão assim como a figura.

Se alguem poder ajudar-me agradecia bastante.

Figura:

quadrados.jpg

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

Isso é uma simples passagem recursiva. Só tens de ter em mente em cada nível saber

- o ponto de origem do quadrado

      Parece pelas imagens ser o canto do quadrado do nível superior

- a largura do quadrado

      Parece pelas imagens ser metade da largura do quadrado do nível superior

- O número total de níveis, senão continua infinitivamente

      4 Imagens, logo 4 níveis

Já agora este tipo de imagens são factrais :thumbsup:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
demon28    0
demon28

ya estive a ler sobre fractaism :thumbsup:

Aquilo é desenha um quadrado e depois desenha 4 quadrados na porta do quadrado que desenhou anteriormente com metade do tamanho e sempre assim.

Eu não estou a ver qual vai ser o meu caso base, o caso de paragem :S

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

O caso de paragem és tu que defines. Isto é, indicas o nível de profundidade que queres atingir. Para atingir o resultado das imagens seria profundidade 4.

Depois é ires actualizando o nível de profundidade conforme vais efectuando a recursão.

Imaginado que a função tem nome funDesenha

Na primeira vez irias dar como argumento o valor 0, indicando que seria o primeiro nível

funDesenha 0

* 0 < 4 -> Válido

* Desenha quadrado

* chama funDesenha (0+1)

funDesenha 1

* 0 < 4 -> Válido

* Desenha quadrado

* chama funDesenha (1+1)

funDesenha 2

...

funDesenha 4

* 4 < 4 Inválido

* pára sem fazer mais nada

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
demon28    0
demon28

Boas cá estou eu novamente,

Eu já consegui desenhar um unico quadrado recursivo mas não estou a conseguir desenhar os 4 quadrados cada um na ponta do anterior :S se poderes ajudar, imaginando que a funcao funDesenha recebe como parametro a profundidade, cordenada x, cordenada y, width e heigth.

Agradeço imenso a ajuda.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Betovsky    2
Betovsky

A função funDesenha deve ser a mesma que a função que desenhaste o primeiro quadrado.

Só terás apenas uma função de desenhar quadrados, é para isso que serve a recursividade :)

Era esta a tua dúvida?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
demon28    0
demon28

Olha acho que ja sei como fazer a cena que tinha dúvida, estou a fazer uns esquemas para ver as contas e ja posto a dizer se consegui. :)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade