Calcular mcd. Compila bien pero no corre

Iniciado por jairogon, 1 Julio 2010, 03:52 AM

0 Miembros y 1 Visitante están viendo este tema.

do-while

¡Buenas!

Eso es nicolas_cof. Lo crrecto seria mcd(b,a%b); no mcd(a,a%b); ya que mcd{a,b} = mcd{b,r}, con r el resto de dividir a por b (es decir |a|%|b|).
- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!

cbug

mcd( b, a % b ); //mcd( a, a % b );

Eso fue una corrección? Creo que ya fue respondida por do-while.  :xD

Ahora bien, lo de incluir stdlib.h para usar abs(), me parece mucho, no sé si en esto último estoy en lo correcto.

nicolas_cof

Cita de: cbug en  3 Julio 2010, 01:22 AM
mcd( b, a % b ); //mcd( a, a % b );

Eso fue una corrección? Creo que ya fue respondida por do-while.  :xD

Si, fue una correcion, que ya fue afirmada por do-while. ;)

Cita de: cbug en  3 Julio 2010, 01:22 AM
mcd( b, a % b ); //mcd( a, a % b );Ahora bien, lo de incluir stdlib.h para usar abs(), me parece mucho, no sé si en esto último estoy en lo correcto.

cbug, al contrario ya que en la etapa de enlazado se extrae solamente la funcion utilizada de la libreria stdlib.h, en este caso abs().

Ademas si te pones a comparar entre el codigo generado en asm usando una funcion propia _abs() y la que viene en la libreria stdlib.h, la diferencia es bastante notable y favorable para la funcion abs() y por ende mucho mas eficiente.

Salu10.

cbug

 :-[ Ups es cierto xD.

Ahora bien, gracias por el consejo sobre la librería... no sabía que en el enlazado sólo se extrae esa función.

nicolas_cof

cbug, de nada! Para eso estamos compañero ;)

Salu10.