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):
#include <iostream>
using std::cout;
using std::cin;
int main()
{
int numero;
cout <<"Ingrese un entero positivo para calcular su factorial: ";
cin >> numero;
int factorial=0;
int numero2=numero;
for (int contador=1;contador < numero;contador++)
{
if (contador == 1)
{
factorial+=numero2 * numero2-1;
numero2-= 2;
}
else
{
factorial*= numero2;
numero2--;
}
}
cout <<"\nFactorial: " <<factorial;
return 0;
}
Cita de: 718208 en 21 Agosto 2014, 14:43 PM
...............................................
(el ejercicio me pide hacerlo con for):
...............................................
Ya que es con un for, prueba algo como esto:
int factorial=1;
for (int contador=2;contador <= numero;contador++)
factorial *= contador;
Creo que el código se explica por si solo. ;)
¡¡¡¡ Saluditos! ..... !!!!
(http://st.forocoches.com/foro/images/smilies/aaaaa.gif)
Cita de: leosansan en 21 Agosto 2014, 15:18 PM
Ya que es con un for, prueba algo como esto:
int factorial=1;
for (int contador=2;contador <= numero;contador++)
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 ;-)