Horner法则

//Horner法则 求 多项式的值 
//author:zhuxuehan
//blog:hi.baidu.com/boyzxh
#include<stdio.h>
#include<stdlib.h>
#define maxsize 100

int horner(int xishu[],int n,int x);

int main(){
     int xishu[maxsize];    //存放系数 
     int n;                 //n次多项式 
     int x;                 //关于x的多项式 
     int i,j;               //循环变量
     int res;               //结果 
     printf("共有几次?");
     scanf("%d",&n);
     printf("依次输入系数:");
     if((n+1)<maxsize){
        for(i=0;i<n+1;i++)      //最高次为n时,共有n+1项,因为还有0次项 
            scanf("%d",&xishu[i]);     
     }
     else return -1;
     printf("x的值:");
     scanf("%d",&x);
     res = horner(xishu,n,x);
     printf("结果是:%d\n",res);     
     system("pause");
     return 0;
}

int horner(int xishu[],int n,int x){
//horner法则求多项式 
    int i;
    int res = xishu[n];
    for(i=1;i<=n;i++)
        res = res*x + xishu[n-i];
    return res;
}

/*
求 x^3 + 2x + 3的值---------------  3*x^0 + 2*x + 0*x^2 + 1*x^3
则:
最高次为:3
依次输入的系数为:3 2 0 1
当x=2时,值为15。
*/







 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值