Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Mario Olivera en 21 Agosto 2014, 14:43 pm



Título: [Solucionado] Problema en ejercicio: Sacar factorial de entero positivo (C++)
Publicado por: Mario Olivera en 21 Agosto 2014, 14:43 pm
 Hola gente, disculpen las molestias, estoy haciendo unos ejercicios de un libro de C++ y me pide que haga un programa el cual el usuario ingrese un numero entero positivo y este saque su valor..

 Para el que no sepa como sacar el factorial de un entero positivo voy a explicarles:

n representa el valor ingresado por el usuario, osea el número entero positivo

 Entonces para sacar su factorial se implementa esto:

 n= n. n-1 . n-1 .n-1..... así hasta lllegar a 1, por ejemplo si el usuario ingresa el número 5 el programa tendrá que hacer esto:

 5= 5 . 4 .3 .2 .1

Dejo el código del programa que hice (el ejercicio me pide hacerlo con for):

Código
  1. #include <iostream>
  2. using std::cout;
  3. using std::cin;
  4.  
  5. int main()
  6. {
  7. int numero;
  8. cout <<"Ingrese un entero positivo para calcular su factorial: ";
  9. cin >> numero;
  10.    int factorial=0;
  11. int numero2=numero;
  12. for (int contador=1;contador < numero;contador++)
  13. {
  14. if (contador == 1)
  15. {
  16. factorial+=numero2 * numero2-1;
  17. numero2-= 2;
  18.  
  19. }
  20.  
  21. else
  22. {
  23. factorial*= numero2;
  24. numero2--;
  25. }
  26.  
  27.  
  28. }
  29.  
  30. cout <<"\nFactorial: " <<factorial;
  31. return 0;
  32. }


Título: Re: Problema en ejercicio: Sacar factorial de entero positivo (C++)
Publicado por: leosansan en 21 Agosto 2014, 15:18 pm
...............................................
 (el ejercicio me pide hacerlo con for):
...............................................

Ya que es con un for, prueba algo como esto:

Código
  1.  int factorial=1;
  2.  for (int contador=2;contador <= numero;contador++)
  3.    factorial *= contador;

Creo que el código se explica por si solo.  ;)

¡¡¡¡ Saluditos! ..... !!!!


(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)


Título: Re: Problema en ejercicio: Sacar factorial de entero positivo (C++)
Publicado por: Mario Olivera en 21 Agosto 2014, 15:35 pm
Ya que es con un for, prueba algo como esto:

Código
  1.  int factorial=1;
  2.  for (int contador=2;contador <= numero;contador++)
  3.    factorial *= contador;

Creo que el código se explica por si solo.  ;)

¡¡¡¡ Saluditos! ..... !!!!


(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)

Muchas gracias leosansan, me has solucionado el problema  ;-)