作者bluesapphire (Blue Sapphire)
看板C_and_CPP
标题[问题] 一段课本语法的疑问麻烦了
时间Sat Oct 17 21:38:40 2009
int aPos=0,bPos=0;
while((aPos < terms) && (bPos < b.terms))
if((termArray[aPos].exp) == (b.termarray[bPos].exp)){
float t = termArray[aPos].coef + b.termArray[bPos].coef;
if(t) c.NewTerm(termArray[aPos].coef, termArray[aPos].exp);
aPos++;bPos++;
}
else if((termArray[aPos].exp) < (b.termArray[bPos].exp)){
c.NewTerm(b.termArray[bPos].coef, b.termArray[bPos].exp);
bPos++;
}
else{
c.NewTerm(termArray[aPos].coef,termArray[aPos].exp);
aPos++;
}
各位好,我想询问一下...
我正在读资料结构Horowitz那本..他在介绍怎麽用c++算两个多项式相加
有问题的是上面那两行...我想询问一下变色的那一行是不是小於符号应该改成大於
才对...
因为我想说...要是按照他原本的...
要是a的exponent小於b的exponent
则把b的系数和次方放到结果c 然後bPos b的位址再+1
可是我想很久...这样的话不是就a永远小於b吗?
是不是应该小於符号换成大於计算才会对?
thanks for the help
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.64.6
1F:→ tiyun:你真的了解这程式要干嘛吗..? 10/17 21:50
2F:推 snowlike:我认为这要视范例告诉你的多项式由次方大排到小还是相反 10/17 21:56
3F:→ bluesapphire:等等我补图 可能我没打出整个程式片段 10/17 22:00
4F:→ bluesapphire:刚刚问了人好像应该是降幂排列所以这样就没错 10/17 22:01
6F:→ bluesapphire:上面网址是imageshack照书的图 恩恩^^ 10/17 22:02
7F:→ bluesapphire:不过还是要谢谢楼上两位热心帮忙想 10/17 22:03