试验一.cpp

来自「这个程序是用于计算方法中的插值算法」· C++ 代码 · 共 42 行

CPP
42
字号
#include<stdio.h> 

float LAGR ()
{
	float a=0,b,t,x,X[20],Y[20];
	int i,j,n;
	printf("请输入未知数x的值:  ");
	scanf("%f",&x);
	printf("请输入插值点个数n的值(n<20):  ");
	scanf("%d",&n);
	printf("请输入%d个数据保存到X数组:  ",n);
	for(i=0;i<n;i++)
	{
		scanf("%f",&X[i]);
	}
	printf("请输入%d个数据保存到Y数组:  ",n);
	for(j=0;j<n;j++)
	{
		scanf("%f",&Y[j]);
	}
	b=0;
	for(i=0;i<n;i++)
	{
		t=1;
		for(j=0;j<n;j++)
		{
			if(j!=i)
			{
				t*=((x-X[j])/(X[i]-X[j]));
			}
		}
		b+=t*Y[i];
	}
	return b;
}

void main(void)
{
	float y;
	y=LAGR();
	printf("y的值是%f\n",y);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?