我需要帮助创建/改进for循环
本文关键字:改进 for 循环 创建 帮助 | 更新日期: 2023-09-27 18:25:00
我创建了一个程序来创建多项式。但是,我无法以正确的方式显示指数。
例如,如果我在数组中输入[1,2,3]来创建多项式,我会得到多项式:1+2x+3x^(2)。我想要得到的是:1x^(2)+2x+3。请注意,数组中的数字仍然按相同的顺序排列。唯一改变的是指数和幂从左边开始(最高阶从左边开始)。这部分我需要帮助。
这是我对它进行排序的循环的代码:
''
提前感谢!
只需将i初始化为n-1,并在每次迭代中减去
public void printPoly1(int[] poly, int n)
{
for (int i = n-1; i >= 0; i--)
{
Console.Write(poly[i]);
if (i != 0)
{
Console.Write("x^" + i + " + ");
}
}
Console.WriteLine("'n");
}
如果零件,则更改此项
if (i != 0)
{
Console.Write("x^" + i);
}
到此
if ((n - 1 - i) != 0)
{
Console.Write("x^" + (n - 1 - i));
}
因为功率应该从循环结束开始(就像反向循环一样)。但是您从开始到结束都在迭代(正常循环)。所以从n - 1
减去计数器(i
)。
如果你还不明白,那就看看这里。第一行是循环中的计数器,应该从0到6开始。
0 1 2 3 4 5 6 // normal
6-0 6-1 6-2 6-3 6-4 6-5 6-6 // do subtract
6 5 4 3 2 1 0 // inverse