Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: BJM en 19 Julio 2012, 02:58 AM

Título: Programa que calcula factorial de un valor
Publicado por: BJM en 19 Julio 2012, 02:58 AM
#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);
}
Título: Re: Programa que calcula factorial de un valor
Publicado por: avesudra en 19 Julio 2012, 03:09 AM
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!
Título: Re: Programa que calcula factorial de un valor
Publicado por: DickGumshoe en 19 Julio 2012, 09:53 AM
¡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:

Código (cpp) [Seleccionar]
#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!
Título: Re: Programa que calcula factorial de un valor
Publicado por: Sputnik_ en 24 Julio 2012, 16:34 PM
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.