using System;
public class Test
{
public static int Fact( int n )
{
if( n == 0 ) return 1;
return n*Fact( n-1);
}
public static double Term( double x, int n )
{
return Math.Pow( x, n )/ Fact(n);
}
public static void Main()
{
const double eps = 0.00001;
int i = 0;
double term;
do
{
term = Term( 1, i++ );
}
while( term > eps );
Console.
WriteLine( exp ); Console.WriteLine( Math.Exp(1) );
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QKewogICAgcHVibGljIHN0YXRpYyBpbnQgRmFjdCggaW50IG4gKQogICAgewogICAgICAgIGlmKCBuID09IDAgKSByZXR1cm4gMTsKICAgICAgICByZXR1cm4gbipGYWN0KCBuLTEpOwogICAgfQogICAgCiAgICBwdWJsaWMgc3RhdGljIGRvdWJsZSBUZXJtKCBkb3VibGUgeCwgaW50IG4gKQogICAgewogICAgICAgIHJldHVybiBNYXRoLlBvdyggeCwgbiApLyBGYWN0KG4pOyAKICAgIH0KICAgIAoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewogICAgICAgIGNvbnN0IGRvdWJsZSBlcHMgPSAwLjAwMDAxOwogICAgICAgIGRvdWJsZSBleHAgPSAwOwogICAgICAgIGludCBpID0gMDsKICAgICAgICBkb3VibGUgdGVybTsKICAgICAgICBkbwogICAgICAgIHsKICAgICAgICAgICAgdGVybSA9IFRlcm0oIDEsIGkrKyApOwogICAgICAgICAgICBleHAgKz0gdGVybTsKICAgICAgICB9IAogICAgICAgIHdoaWxlKCB0ZXJtID4gZXBzICk7CiAgICAgICAgCiAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoIGV4cCApOwogICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCBNYXRoLkV4cCgxKSApOwogICAgICAgIAoJfQp9