Ir ao conteúdo
  • Cadastre-se

Calculo de MDC recursivo


chris.ak

Posts recomendados

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.

Link para o comentário
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

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...