利用C++语言编写sin函数中遇到的问题

1个回答

  • t=m*t*x*x/((2*i-1)*(2*i-2)); 已经等于t=-t*x*x/((2*i-1)*(2*i-2));

    你再m=-m; 就负负得正了

    看这个t=m*t*x*x/((2*i-1)*(2*i-2));

    第一次m=-1,计算后t为负数,之后m变为整数

    第二次t=m*t*x*x/((2*i-1)*(2*i-2)); 右边的m为正数,t为负数,故计算后左边的t依旧为负数

    看到没,连续两次负数

    再看这个t=-t*x*x/((2*i-1)*(2*i-2));

    第一次t为正数,计算后t为负数

    第二次t为负数,负负得正,计算后t为正数

    一次正一次负间隔开来