努力的二虎子 发表于 2021-9-2 23:33:15

关于秦九朝算法的时间的一个小问题,求助大佬!

这些代码是计算a0+a1*x^1+a2*x^2...+an*x^n的结果的然后用了两种方法,来比较运行的时间,按理说秦九朝算法不是应该更快一些吗,可为什么时间确相同呢?
直接法代码:
void function1(int a[],int n,double x)
{
        int i;
        double num;
        num=a;
        for(i=1;i<=n;i++)
        {
        num=num+a*pow(x,i);       
        }
        printf("直接法最后值为:%.3lf\n",num);
}

秦九朝算法的代码:

void function2(int a[],int n,double x)
{
       double p=a;
        int i;
        for(i=n;i>0;i--)
        {
                p=a+x*p;
}

main函数部分:
       
      start=clock();
        function1(a,n,x);
        end=clock();
        printf("直接法的时间为:%fn\n",(double)(end-start)/CLK_TCK);
       
        start=clock();
        function2(a,n,x);
        end=clock();
        printf("秦九朝算法的时间为:%fn\n",(double)(end-start)/CLK_TCK);
       
        return 0;
}

最后结果:

wp231957 发表于 2021-9-3 05:25:24

double对应%lf

努力的二虎子 发表于 2021-9-3 09:46:08

wp231957 发表于 2021-9-3 05:25
double对应%lf

没有改变哦
页: [1]
查看完整版本: 关于秦九朝算法的时间的一个小问题,求助大佬!