//求代数余子式公式 public static void Algebraic_Complement(int[,] D, int[,] A, int n)//D 代表原矩阵 A代表代数余子式的矩阵 { int[,] Sub = new int[n - 1, n - 1]; int[] arr = new int[n - 1]; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { for (int k = 0; k < n - 1; k++) { arr[k] = k; } Subdeterminant(i, j, D, Sub, n); int Sum = 0; Det.Resove(0, n - 1, arr, Sub, ref Sum); if ((i + j) % 2 == 0) { A[j, i] = Sum; } else { A[j, i] = -Sum; } } } }
private void button1_Click(object sender, EventArgs e) //计算行列式的值 { if (order == 0) { MessageBox.Show("请输入正确的数值"); } else { int cnt = 0, Sum = 0; for (int i = 0; i < order; i++) { for (int j = 0; j < order; j++) { // a[i, j] = int.Parse(LBT[cnt].Text.ToString()); // Sum += a[i, j]; f = int.TryParse(LBT[cnt].Text.ToString(), out a[i, j]); if (f == false) { break; } cnt++; } if (f == false) { break; } } if (f == false) { MessageBox.Show("请按要求输入合理整数!"); } else { int[] b = new int[order]; for (int i = 0; i < order; i++) { b[i] = i; } Det.Resove(0, order, b, a, ref Sum); textBox2.Text = Sum.ToString(); } } }