一个多项式的例子: 5x^5+2x^4-6x^3+7x^2+8x+1 ,即x的次数逐渐减一。输入是一个字符串数组,其中多项式的系数用逗号分隔,多项式的次数和可以提升的次数。基于示例:多项式5的第5,2,-6,7,8,1行。并且可以提高的程度= k。这是我的草图:
public static string Stepen(string[] coff1, int deg1, int k)
{
int count = deg1 * k;
int c = k;
int[] tek = new int[deg1 * c + 1];
int[] tekInt = new int[deg1 * c + 1];
for(int m = 0; m < deg1+1; m++)
{
tek.Add(Convert.ToInt32(coff1[m]));
}
for (int m = 0; m < coff1.Length; m++)
{
tek[m] = Convert.ToInt32(coff1[m]);
}
for(int b = coff1.Length; b < tek.Length; b++)
{
tek[b] = 0;
}
for (int st = 0; st < k - 1; st++)
{
for (int i = 0; i < coff1.Length; ++i)
{
for (int j = 0; j < tek.Length; ++j)
{
tekInt[i + j] += Convert.ToInt32(coff1[i]) * tek[j];
}
}
foreach (int b in tekInt)
{
int v = 0;
tek[v] = tekInt[b];
v++;
}
}
当元素超出一行时出现错误
tekInt[i + j] += Convert.ToInt32(coff1[i]) * tek[j];
幂运算可以表示为几个乘法运算。
多项式乘以多项式的实现很简单:
为了方便使用,数组中系数的索引与变量的度数相同,例如,对于 3x 2 +6x+5,系数数组将为
[5,6,3],因为:5 x 0 + 6 x 1 + 3x 2。在这种情况下,乘法方法可以如下:
之后,求幂可能如下所示: