#include<iostream>
#include<string.h>
using namespace std;
int n,i,fact;
int factorial( int n );
main (){
cout<<"ingrese numero:"<<endl;
cin>>n;
if(n<1){
cout<<"ERROR, intente de nuevo"<<endl;
}
else
cout<<"\n factorial:"<<factorial(n)<<"\n"<<endl;
system("pause");
}
int factorial(int n){
int fact=1;
for(n;n>=1;n--)
{
fact=fact*n;
}
return(fact);
}
Emmm ¿esto es un aporte , tienes algun problema , etc? sea lo que sea postea el código bajo las etiquetas GeSHi para que tenga una mejor legibilidad por favor.
¡Un saludo!
¡Hola!
Si lo que pasa es que no encuentras el error en tu código, es porque para system("pause"); debes incluir la biblioteca cstdlib. De todas formas, creo que es mejor usar getchar(), ya que este último sí es portable a otras plataformas, al contrario que el primero.
Por cierto, una cosa que he encontrado en tu código:
#include<string.h>
Si es C++, no debes incluir string.h, sino cstring. Además, no usas para nada esa biblioteca, por lo que podrías quitarla.
Saludos!
el factorial de 0 es 1, no se C++ pero lo hice en C
#include <stdio.h>
int main()
{ unsigned int i,f=1;
printf ("NUM: ");
scanf ("%d",&i);
for (;i>0;i--)
f*=i;
printf ("%d",f);
return(0);
}
saludos.