Java - Maximo comun divisor

   
Vista:

Maximo comun divisor

Publicado por Mikel (1 intervención) el 21/03/2015 21:02:37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public static int MCD(int A,int B)
{
    int Dividendo;
    int Divisor;
    int Resto;
 
    {
    System.out.println("Introduce el valor de A y B");
    if(A > B)
        {
            Dividendo = A;
            Divisor = B;
        }
    else
        {
            Dividendo = B;
            Divisor = A;
        }
    Resto = Dividendo  %  Divisor;
    do
        {
            Dividendo = Divisor;
            Divisor = Resto;
            Resto = Dividendo  %  Divisor;
        }
    while (Resto!= 0);
 
System.out.println("El MCD de A y B es" +Divisor);
    }
return Divisor;
 
}


Estoy haciendo una calculadora y quiero buscar el Maximo Comun Divisor; ya he realizado elprograma pero me da una serie de fallos que no logro corregirlo

Exception in thread "main" java.lang.ArithmeticException: / by zero
at Calculo.MCD(Calculo.java:78)
at Menu.MenuMCD(Menu.java:86)
at Principal.main(Principal.java:34)

Si hay sabe como solucionarlo agradeceria una solucion. Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jhonnathan Emilio Cardona Saineda

Maximo comun divisor

Publicado por Jhonnathan Emilio Cardona Saineda (328 intervenciones) el 24/03/2015 16:56:31
Hola,
La misma excepción te da un indicio de lo que puede ser y es que en algún momento le haces modulo a un cero lo cual es un error aritmetico.
Podría ser acá "Resto = Dividendo % Divisor; " en el cual la variable Divisor se vuelve cero. Con esto deberías validar que este no tome ese valor.

Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar