Enunciado ejercicio programación

Hola me gustaria saber si podrian ayudarme a resolver este ejercicio de programacion de funciones y punteros:

void MCD (int a, int b , int *result)

el procedimiento devolvera en result el valor del MCD

Metodo de euclides
Sean los numero A y B, el metodo para hallar el maximo comun divisor de dos numero a y B por el metodo de euclides es:

1º Dividir el numero mayor A por el menor B, Si el resto d ela division es cero, el numero B es el maximo comun divisor.

2º Si la division no es exacta, se divide el numero menor B por el resto de la division anterior

3º Se siguen los pasos anteriores hasta obtener un resto 0, el numero divisor es el mcd buscado
yo lo haría así

If (a>b){
menor = b;
}else{
menor = a;
}

For (i = menor;i>0;i-1)
{
if a MOD i == 0 AND b MOD i == 0 { result = i;}
}

Método Euclides (suponemos que a es mayor que b)

chiv = false
loop until chiv = true{
if (a mod b == 0){
chiv = true
}else{
MCD = a mod b
a = b
b = MCD
}
}
result = b
1 respuesta