Título: [Duda C] Ayuda a comprender un código. Publicado por: josevc en 3 Noviembre 2012, 18:25 pm Buenas, tengo el siguiente código, el cual calcula el factorial de un número:
Citar #include <stdio.h> int main(){ int num,copianum; long unsigned fact=1; do{ puts("Introduce numero"); scanf("%d",&num); }while(num<0); copianum=num; while(num>1) fact*= num--; printf("El factorial de %d es %lu\n",copianum,fact); system("pause"); return 0; } Estoy tratando de descifrar como funciona, pero es esto lo que no comprendo del todo: Citar while(num>1) fact*= num--; num--, ¿Es igual a num-1 ? Pense que sería lo mismo poner: fact=fact*(num-1) Pero al sustituirlo el programa no funciona, entonces estoy algo perdido, ¿como se interpreta: fact*=num-- ? Espero vuestra ayuda, Muchas gracias. Título: Re: [Duda C] Ayuda a comprender un código. Publicado por: xiruko en 3 Noviembre 2012, 18:34 pm Código
esto es equivalente a esto otro: Código
un saludo! Título: Re: [Duda C] Ayuda a comprender un código. Publicado por: Stakewinner00 en 3 Noviembre 2012, 18:37 pm Código
tambien es equivalente a Citar while(num>1) { fact = fact * num; num = num -1; } Título: Re: [Duda C] Ayuda a comprender un código. Publicado por: josevc en 3 Noviembre 2012, 18:41 pm Muchas gracias por vuestras respuestas, y rapidez.
|