真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

拉格朗日函數(shù)圖像C語言,拉格朗日函數(shù)構(gòu)造

用C語言實(shí)現(xiàn)拉格朗日插值、牛頓插值、等距結(jié)點(diǎn)插值算法

#includestdio.h

站在用戶的角度思考問題,與客戶深入溝通,找到臨西網(wǎng)站設(shè)計(jì)與臨西網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站制作、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名申請(qǐng)、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋臨西地區(qū)。

#includestdlib.h

#includeiostream.h

typedef struct data

{

float x;

float y;

}Data;//變量x和函數(shù)值y的結(jié)構(gòu)

Data d[20];//最多二十組數(shù)據(jù)

float f(int s,int t)//牛頓插值法,用以返回插商

{

if(t==s+1)

return (d[t].y-d[s].y)/(d[t].x-d[s].x);

else

return (f(s+1,t)-f(s,t-1))/(d[t].x-d[s].x);

}

float Newton(float x,int count)

{

int n;

while(1)

{

cout"請(qǐng)輸入n值(即n次插值):";//獲得插值次數(shù)

cinn;

if(n=count-1)// 插值次數(shù)不得大于count-1次

break;

else

system("cls");

}

//初始化t,y,yt。

float t=1.0;

float y=d[0].y;

float yt=0.0;

//計(jì)算y值

for(int j=1;j=n;j++)

{

t=(x-d[j-1].x)*t;

yt=f(0,j)*t;

//coutf(0,j)endl;

y=y+yt;

}

return y;

}

float lagrange(float x,int count)

{

float y=0.0;

for(int k=0;kcount;k++)//這兒默認(rèn)為count-1次插值

{

float p=1.0;//初始化p

for(int j=0;jcount;j++)

{//計(jì)算p的值

if(k==j)continue;//判斷是否為同一個(gè)數(shù)

p=p*(x-d[j].x)/(d[k].x-d[j].x);

}

y=y+p*d[k].y;//求和

}

return y;//返回y的值

}

void main()

{

float x,y;

int count;

while(1)

{

cout"請(qǐng)輸入x[i],y[i]的組數(shù),不得超過20組:";//要求用戶輸入數(shù)據(jù)組數(shù)

cincount;

if(count=20)

break;//檢查輸入的是否合法

system("cls");

}

//獲得各組數(shù)據(jù)

for(int i=0;icount;i++)

{

cout"請(qǐng)輸入第"i+1"組x的值:";

cind[i].x;

cout"請(qǐng)輸入第"i+1"組y的值:";

cind[i].y;

system("cls");

}

cout"請(qǐng)輸入x的值:";//獲得變量x的值

cinx;

while(1)

{

int choice=3;

cout"請(qǐng)您選擇使用哪種插值法計(jì)算:"endl;

cout" (0):退出"endl;

cout" (1):Lagrange"endl;

cout" (2):Newton"endl;

cout"輸入你的選擇:";

cinchoice;//取得用戶的選擇項(xiàng)

if(choice==2)

{

cout"你選擇了牛頓插值計(jì)算方法,其結(jié)果為:";

y=Newton(x,count);break;//調(diào)用相應(yīng)的處理函數(shù)

}

if(choice==1)

{

cout"你選擇了拉格朗日插值計(jì)算方法,其結(jié)果為:";

y=lagrange(x,count);break;//調(diào)用相應(yīng)的處理函數(shù)

}

if(choice==0)

break;

system("cls");

cout"輸入錯(cuò)誤!!!!"endl;

}

coutx" , "yendl;//輸出最終結(jié)果

}

拉格朗日插值用c語言怎么編程?各位高手幫幫忙啦

#includestdio.h

#includestring.h

#define N 100

typedef struct tag{

double x;

double y;

}POINT;

void main()

{

int i,j,n;

double x,temp,Ln=0;

POINT pt[N];

printf("請(qǐng)輸入你要輸入點(diǎn)的個(gè)數(shù),,1=n=%d:\n",N);

printf("n=");

scanf("%d",n);

printf("\n");

printf("\n請(qǐng)輸入對(duì)應(yīng)的點(diǎn)數(shù)\n");

for(i=0;in;i++)

scanf("%lf,%lf",pt[i].x,pt[i].y);

printf("\n");

printf("輸入插值點(diǎn)x的值:\n");

scanf("%lf",x);

printf("\n");

for(i=0;in;i++)

{

for(j=0,temp=1;jn;j++)

{

if(j!=i)

temp=temp*(x-pt[j].x)/(pt[i].x-pt[j].x);

}

Ln=Ln+temp*pt[i].y;

}

printf("輸出:\nLn(%lf)=%lf\n",x,Ln);

}

拉格朗日插值公式 C語言實(shí)現(xiàn) runge現(xiàn)象

拉格朗日插值多項(xiàng)式 ,用于離散數(shù)據(jù)的擬合 C/C++ code

#include stdio.h

#include conio.h

#include alloc.h

float lagrange(float *x,float *y,float xx,int n) /*拉格朗日插值算法*/

{ int i,j;

float *a,yy=0.0; /*a作為臨時(shí)變量,記錄拉格朗日插值多項(xiàng)式*/

a=(float *)malloc(n*sizeof(float));

for(i=0;i=n-1;i++)

{ a[i]=y[i];

for(j=0;j=n-1;j++)

if(j!=i) a[i]*=(xx-x[j])/(x[i]-x[j]);

yy+=a[i];

}

free(a);

return yy;

}

main()

{ int i,n;

float x[20],y[20],xx,yy;

printf("Input n:");

scanf("%d",n);

if(n=20) {printf("Error!The value of n must in (0,20)."); getch();return 1;}

if(n=0) {printf("Error! The value of n must in (0,20)."); getch(); return 1;}

for(i=0;i=n-1;i++)

{ printf("x[%d]:",i);

scanf("%f",x[i]);

}

printf("\n");

for(i=0;i=n-1;i++)

{ printf("y[%d]:",i);scanf("%f",y[i]);}

printf("\n");

printf("Input xx:");

scanf("%f",xx);

yy=lagrange(x,y,xx,n);

printf("x=%f,y=%f\n",xx,yy);

getch();

}

拉格朗日差值多項(xiàng)式的c語言

function =lagrange(x1,y1,xx)

%本程序?yàn)長(zhǎng)agrange1插值,其中x1,y1

%為插值節(jié)點(diǎn)和節(jié)點(diǎn)上的函數(shù)值,輸出為插值點(diǎn)xx的函數(shù)值,

%xx可以是向量。

syms x

n=length(x1);

for i=1:n

t=x1;t(i)=[];L(i)=prod((x-t)./(x1(i)-t));% L向量用來存放插值基函數(shù)

end

u=sum(L.*y1);

p=simplify(u) % p是簡(jiǎn)化后的Lagrange插值函數(shù)(字符串)

=subs(p,x,xx);

clf

plot(x1,y1,'ro',xx,,'*')


分享題目:拉格朗日函數(shù)圖像C語言,拉格朗日函數(shù)構(gòu)造
本文URL:http://weahome.cn/article/dsspsgc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部