Hola a todos.
Tengo un problemilla con las funciones en C. El caso es que al llamarlas no obtengo el resultado deseado un ejemplo,calcular el factorial de n:
# include <iostream>
using namespace std;
int factorial (int x)
{
int i=1,aux=1;
for (i=1; i==x; i++)
{
aux=aux*i;
}
return aux;
}
int main (void)
{
int n;
cout<<"Este programa te permite calcular el factorial de n, siendo este un entero positivo"<<endl;
cout<<"introduce n"<<endl;
cin>>n;
cout<< "El factorial de n es "<< factorial (n)<<endl;
system ("pause");
return 0;
}
Al llamar la funcion, me devuelve el valor de aux simpre igual a 1. Es como si el no se ejecutase el "for" y como le he asignado previamente 1 a "aux", variable donde guardo los valores (n-1), me devuelve siempre 1.
Utilizo como programa el Blooshed Dev-C++
Gracias.
Tengo un problemilla con las funciones en C. El caso es que al llamarlas no obtengo el resultado deseado un ejemplo,calcular el factorial de n:
# include <iostream>
using namespace std;
int factorial (int x)
{
int i=1,aux=1;
for (i=1; i==x; i++)
{
aux=aux*i;
}
return aux;
}
int main (void)
{
int n;
cout<<"Este programa te permite calcular el factorial de n, siendo este un entero positivo"<<endl;
cout<<"introduce n"<<endl;
cin>>n;
cout<< "El factorial de n es "<< factorial (n)<<endl;
system ("pause");
return 0;
}
Al llamar la funcion, me devuelve el valor de aux simpre igual a 1. Es como si el no se ejecutase el "for" y como le he asignado previamente 1 a "aux", variable donde guardo los valores (n-1), me devuelve siempre 1.
Utilizo como programa el Blooshed Dev-C++
Gracias.
Comentario