Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
chris.ak

[Resolvido] Calculo de MDC recursivo

Recommended Posts

Olá pessoal!

Estava desenvolvendo um programa que usa uma função para calcular o MDC, e decidi usar o algoritmo de euclides para facilitar ao invés do tradicional método de fatoração. O programa manipula valores altos, por isso gostaria de saber qual dos códigos abaixo torna-se correto e mais eficiente:

int mdc(int x, int y)
{
if (y==0)
{
return x;
}
else
{
return mdc(y,x % y);
}
}

ou

int mdc(int x, int y){
if (x%y == 0){
return y;
}else{
return mdc(y,x % y);
}
}

um foi eu mesmo que desenvolvi e outro foi uma amiga, pelo teste de mesa rápido ambos deram o mesmo resultado no final... mas no final qual seria o melhor?(PS: um retorna X e o outro retorna Y)

obrigado desde ja.

Compartilhar este post


Link para o post
Compartilhar em outros sites

chris.ak,

Eu gostei da primeira solução e acho mais adequada, principalmente pela condição de saída da recursão. Se o segundo parâmetro da segunda função for 0 (zero), o programa vai travar por conta de uma operação de divisão por 0.

[]'s

LNW

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×