Función recursiva del factorial
#include <stdio.h> long factorial( long numero ); /* prototipo de la función */ /* la función main comienza la ejecución del programa */ int main() { int i; /* contador */ /* repite 11 veces; durante cada iteración, calcula el factorial( i ) y despliega el resultado */ for ( i = 0; i <= 10; i++ ) { printf( "%2d! = %ldn", i, factorial( i ) ); } /* fin de for */ return 0; /* indica terminación exitosa */ } /* fin de main */ /* definición recursiva de la función factorial */ long factorial( long numero ) { /* caso base */ if ( numero <= 1 ) { return 1; } /* fin de if */ else { /* paso recursivo */ return ( numero * factorial( numero - 1 ) ); } /* fin de else */ } /* fin de la función factorial */
Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.
Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:
- Si es lenguaje C [c]Código en C[/c]
- Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].
De esta manera el código coloreas el código.
Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.
¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)
Comentarios
De hecho es mas corto el mio, sólo que había muchos comentarios jeje.
y ademas es recursivo:
#include <stdio.h>
long factorial( long numero );
void main(){
int i;
for (i=0;i<=10;i++)
printf( "%2d! = %ldn",i,factorial(i));
}
long factorial( long numero ){
if(numero<=1)
return 1;
else
return(numero*factorial(numero-1));
}
el mio esta mas corto