| Ver tema anterior :: Ver siguiente tema |
| Autor | Mensaje |
|---|
krokstyle
Registrado: 23 Sep 2006 Mensajes: 4
| Publicado: 15/10/2006 9:35 am | | | Título: FACTORIAL DE X NUMERO |
| HOLA A TODOS... A VER SI ALGUIEN TIENE UNA IDEA DE COMO HACER UN INGRESO DE NUMERO Y ARROJAR POR PANTALLA SU NUMERO FACTORIAL.
SALUDOS CORDIALES...
CHAOOO...  |
|
| Volver arriba | |
 |
Polimeron
Registrado: 12 Jul 2006 Mensajes: 38
| Publicado: 15/10/2006 10:56 pm | | | Título: |
| La formula supongo que la sabes: n! = n * (n-1) * (n-2) * .... * 1
Y en pseudocodigo seria:
| Código: | fact = 1; aux = n; mientras (aux != 1) fact = fact * aux; aux = aux - 1;
|
|
|
| Volver arriba | |
 |
Killrazor
Registrado: 24 Ene 2006 Mensajes: 1267 Ubicación: Barcelona
| Publicado: 15/10/2006 11:18 pm | | | Título: |
| Esa es la version mas eficiente pero dada su definicion tambien esta bien entenderlo como funcion recursiva:
| Código: | funcion factorial(entero x) si (numero = 0) retornar 1 sino retornar x * factorial(x - 1) fsi ffuncion
|
Que es una representacion de la definicion de un factorial (0! = 1; n! = n*(n-1)! ) |
|
| Volver arriba | |
 |
|
gui2485_kawakx
Registrado: 22 Ene 2006 Mensajes: 59 Ubicación: Korn, Bs As, Argentina.
| Publicado: 16/10/2006 6:39 am | | | Título: |
| Mi propuesta es:
| Cita: |
int factorial(long numero)
{ long factorial=1; while (n>2) { factorial=factorial*n; n--;}
return factorial; }
|
_________________
Guillermo I'll Love Her, I Need Her, I Seed Her... She Is A Killing Maching |
|
| Volver arriba | |
 |
difer1125
Registrado: 12 Oct 2006 Mensajes: 16
| Publicado: 16/10/2006 8:15 am | | | Título: |
| mi propuesta es:
#include <stdio.h> #include <conio.h>
main()
{
int A,I,C;
printf("DIGITE EL NUMERO"); scanf("%d", & A); fflush(stdin);
C=1; for (I=1;I<=A;I++) { C=C*I; }
printf("EL FACTORIAL DEL NUMERO ES %d\n",C);
getch();
} |
|
| Volver arriba | |
 |
Polimeron
Registrado: 12 Jul 2006 Mensajes: 38
| Publicado: 16/10/2006 8:55 am | | | Título: |
| | Si lo haces como tu dices gui2485_kawakx el problema es que estas usando el parametro de la funcion y lo estas decrementando lo cual no tiene porque ser una buena idea siempre, por eso declare yo una variable local. Por lo demas creo que tu codigo hace lo mismo que el mio y que el de difer1125 pero creo que las variables A,I,C de difer1125 no son muy representativas y calculo de factorial esta mejor como tu lo pusiste en una función. Saludos |
|
| Volver arriba | |
 |
|
krokstyle
Registrado: 23 Sep 2006 Mensajes: 4
| Publicado: 16/10/2006 12:05 pm | | | Título: GRACIAS... |
| EHM... MUCHISIMAS GRACIAS...
SE LES AGRADECE LA DISPOSICION!!
 |
|
| Volver arriba | |
 |
|
|