
24/11/2008, 22:41
|
 | | | Fecha de Ingreso: noviembre-2008 Ubicación: Lima
Mensajes: 28
Antigüedad: 16 años, 2 meses Puntos: 2 | |
Respuesta: Ayuda plz con unos programas en c Hola amigo esta es una forma generalizada puede que te sirva para otro problema parecido a este que trata sobre factoriales ( hablo de tu ejercicio 2 )
Código:
#include <iostream.h>
#include <stdlib.h>
//HECHO POR StevKenshinX =D
int factorial(int n);
int main()
{ int t=1,rep=0,n,num,den,i;
cout<<"Ingrese El numero T \n";
cin>>n;
for(i=1;i<=n;i++)
{
num=factorial(i) ;
den=factorial(i-1) ;
rep=(num/den)+rep;
}
cout<<"factorial "<<rep<<"\n";
system("PAUSE");
return 0;
}
int factorial(int n){
if(n<=1)
{return 1;}
else
{return n * factorial(n-1);}
}
Pero Si En realidad tratamos tu ejercicio, Sobra solo con esto, antes del codigo esta explicacion.
- Como tenemos arriba " t! " esto es igual a t*(t-1)*(t-2)*......
- Y abajo tenemos " (t-1)! " esto es igual a (t-1)*(t-2)*(t-3)...
-Como final date cuenta que en el de arriba y el de abajo hay terminos en comun y como resultado final al dividirlos nos kedaria solo " t " y esto nos llevaria ha hacer una Suma de Numeros Consecutivos , cuya formula es S=t(t+1)/2 . sin tener que hacer un for o while para ir sumando todo los numeros. Ahora Si lee el codigo que es simple.
Código:
#include <iostream.h>
#include <stdlib.h>
//HECHO POR StevKenshinX =D
int main()
{ int n,resultado;
cout<<"Ingrese El numero T \n";
cin>>n;
resultado=n*(n+1)/2;
cout<<"La sumatoria es " <<resultado<<"\n";
system("PAUSE");
return 0;
}
PD: No entendi tu ejercicio 1 y no lei la 3 por falta de tiempo pero si me das una pauta sobre la 1 puede ke cuando entre un rato lo haga, cdt salu2 . |