Ir para o conteúdo
JMAS

Alternativas para ciclos

Mensagens Recomendadas

JMAS

vamos imaginar que eu faço uma função com um ciclo for e em termos de avaliação, vamos supor que o professor pede uma alternativa, se eu fizer com um while, ou outro ciclo qualquer conta como alternativa?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
KTachyon

Pah, do ponto de vista de um professor, acredito que ele queira uma alternativa, não um remake do ciclo.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
KTachyon

Que, na perspectiva de um engenheiro, uma substituição por uma coisa equivalente não é uma solução alternativa.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ribeiro55

Ciclos não são alternativas de ciclos. Ciclo como alternativa de ciclo é açúcar sintáxico.

Penso que deves apontar para uma chamada recursiva.


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
KTachyon

O que seria, então, a alternativa? Um chá das cinco? ;)

Basicamente, se resolver um problema de forma cíclica, com um for, e depois da mesma forma mas com um while em que fazes o incremento da variável "manualmente" (e a inicialização), não estás a dizer ao professor que sabes resolver de outra forma. Estás a dizer que sabes transformar um for num while. A solução final é a mesma. Aliás, se assemblares o código feito com qualquer um dos ciclos, o mais provável é que o código gerado para cada uma dessas "alternativas", fosse praticamente o mesmo. Do meu ponto de vista nem faz sentido que um professor considere que isso seja uma solução alternativa.

Agora, se apresentares uma solução iterativa e uma solução recursiva, aí sim, estás a resolver o problema de duas formas diferentes. Até podias arranjar uma forma diferente de resolver o problema iterativamente, mas nunca pode ser considerada uma solução diferente apenas por trocares um for por um while. Isso seria exactamente o mesmo que dizeres que a solução é diferente porque em vez de utilizares a variável i, estás a utilizar a variável x. É uma forma diferente de representares a mesma solução.


“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”

-- Tony Hoare

Partilhar esta mensagem


Ligação 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 os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.