我开始做的秦九韶算法冗余过于严重,这个问题我从前也注意到了,只是苦于想不到合适的方法,在看了一个朋友代码后才恍然大悟,原来StreamReader还可以如此运用,但是我又不是很明他们(简化后的算法)会不会有隐患呢?(代码越多越好的想法在我脑海中时有闪现,唉,让我再选择方法的时候走了不少的弯路!)
现在将方法转化如下:
private void btnOK_Click(object sender, System.EventArgs e)
{
double a;
double y = 6;
double x = 2;
string s;
if(this.rbPath.Checked)
{
StreamReader sr = File.OpenText(this.openFileDialog.FileName);
while ((s=sr.ReadLine())!=null)
{
a=int.Parse(s);
y=y*x+a;
}
sr.Close();
// for(i=0;i<=n;i++)
// {
// a = A[i];
// y = y*x+a;
// }
this.tbResult.Text = y.ToString();
}
else if(this.rbArt.Checked)//有问题!!!!
{
StreamReader sr = new StreamReader(this.tbArt.Text);//语法转化不正确
while ((s=sr.ReadLine())!=null)
{
a=int.Parse(s);
y=y*x+a;
}
sr.Close();
this.tbResult.Text = y.ToString();
}
}
其中有一处语法转化有问题,可是笨笨的我却想不出对策了,毕竟我对.net的了解太少了,少得可怜,就连StreamRead都是在做这个的时候查数、查网站,查到的!还望大家多多指教!
完整的程序下载地址:https://files.cnblogs.com/donggege/qinjiushao.rar