#include <stdio.h>
double my_exp_n (double x, int degree)
{
int i;
double exp_val=1.0;
double x_div_l = x;
for (i=0;i<degree;++i)
{
exp_val += x_div_l;
x_div_l *= x / (i+2);
}
return exp_val;
}
#define my_exp(x) my_exp_n((x), 100)
int main()
{
int i;
for (i=0;i<=10;++i)
{
int x = 3*i;
printf("exp(%d) = %e\n", x
, my_exp
(x
)); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiAKZG91YmxlIG15X2V4cF9uIChkb3VibGUgeCwgaW50IGRlZ3JlZSkKewogICAgaW50IGk7CiAgICBkb3VibGUgZXhwX3ZhbD0xLjA7CiAgICBkb3VibGUgeF9kaXZfbCA9IHg7CiAgIAogICAgZm9yIChpPTA7aTxkZWdyZWU7KytpKQogICAgewogICAgICAgIGV4cF92YWwgKz0geF9kaXZfbDsKICAgICAgICB4X2Rpdl9sICo9IHggLyAoaSsyKTsKICAgIH0KICAgCiAgICByZXR1cm4gZXhwX3ZhbDsKfQoKI2RlZmluZSBteV9leHAoeCkgbXlfZXhwX24oKHgpLCAxMDApCiAKaW50IG1haW4oKQp7CiAgICBpbnQgaTsKICAgCiAgICBmb3IgKGk9MDtpPD0xMDsrK2kpCiAgICB7CiAgICAgICAgaW50IHggPSAzKmk7CiAgICAgICAgcHJpbnRmKCJleHAoJWQpID0gJWVcbiIsIHgsIG15X2V4cCh4KSk7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==