插值程序问题

guolianghu 2010-05-17 11:16:28
一组数据x{1.1 1.2 1.5 1.5 1.5 2.0 3.5 4.0} 对应的值y{10.2 10.5 15.3 18.9 20.0 25 25.3 26},其中x中存在相同x值,分别对应不同的y值,怎样利用插值法编写出当x=1.8时的值,x=1.8时的值可能有多个.请高手用C#编写这段程序,不胜感激!
...全文
103 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yaazz 2010-06-30
  • 打赏
  • 举报
回复
需要先插值,LZ是不是漏掉一些条件信息
guolianghu 2010-06-30
  • 打赏
  • 举报
回复
更正:
要求插值算法!以上各位的程序没体现插值的问题,你的x[i] == 1.8从哪来的,ys.Add(y[i])语句说明不了什么问题,问题没有解决.
guolianghu 2010-06-30
  • 打赏
  • 举报
回复
要求插值算法!以上各位的程序没体现插值的问题,你的int i==1.8从哪来的,ys.Add(y[i])语句说明不了什么问题,问题没有解决.
s8975565 2010-06-30
  • 打赏
  • 举报
回复
用Hash吧
guolianghu 2010-06-30
  • 打赏
  • 举报
回复
没漏掉任何条件
mayonglong 2010-05-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 gxingmin 的回复:]
C# code
double []x=new double[]{1.1, 1.2 ,1.5, 1.5, 1.5, 2.0 ,3.5 ,4.0};
double[] y = new double[] { 10.2, 10.5, 15.3, 18.9, 20.0, 25, 25.3, 26 };

if (x.Length == y.Length)
……
[/Quote]

lz要求唯一??
Justin-Liu 2010-05-17
  • 打赏
  • 举报
回复
没看明白说啥。。。
gxingmin 2010-05-17
  • 打赏
  • 举报
回复
if (x[i] == 1.8) //1.8的所有y值
double类型比较,改成下面的似乎更好点
if (Math.Abs( x[i]- 1.8)<0.000001) //1.8的所有y值
gxingmin 2010-05-17
  • 打赏
  • 举报
回复
double []x=new double[]{1.1, 1.2 ,1.5, 1.5, 1.5, 2.0 ,3.5 ,4.0};
double[] y = new double[] { 10.2, 10.5, 15.3, 18.9, 20.0, 25, 25.3, 26 };

if (x.Length == y.Length)
{
List<double> ys = new List<double>();
for (int i = 0; i < x.Length; i++)
{
if (x[i] == 1.8) //1.8的所有y值
{
ys.Add(y[i]);
}
}

}

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧