方程组程序

本文关键字:程序 方程组 | 更新日期: 2023-09-27 18:16:20

我正在尝试用c#编写一个方程组程序。我知道如何在纸上解决这个问题,但我很难把它写进代码。我在这方面还是个新手(不到一个月前开始编程,几天前开始学习c#),所以我知道这是不正确的,但这是我能想到的最好的。我试着在这里和其他网站上搜索一些东西,把我送到正确的方向,但找不到任何东西。我不希望你为我写整个程序,也许只需要几行给我一个正确的想法。这是我到目前为止所做的,我意识到其中的错误以及为什么它不起作用,我只是不知道如何修复它们。

            Console.WriteLine("Enter first equation A: ");
            string str1A = Console.ReadLine();
            Console.WriteLine("Enter first equation B: ");
            string str1B = Console.ReadLine();
            Console.WriteLine("Enter first equation C: ");
            string str1C = Console.ReadLine();
            Console.WriteLine("Enter the second equation A: ");
            string str2A = Console.ReadLine();
            Console.WriteLine("Enter the second equation B: ");
            string str2B = Console.ReadLine();
            Console.WriteLine("Enter the second equation C: ");
            string str2C = Console.ReadLine();
            double dbl1A = Convert.ToDouble(str1A);
            double dbl1B = Convert.ToDouble(str1B);
            double dbl1C = Convert.ToDouble(str1C);
            double dbl2A = Convert.ToDouble(str2A);
            double dbl2B = Convert.ToDouble(str2B);
            double dbl2C = Convert.ToDouble(str2C);
            double dbl2AN = dbl2A * -1;
            double dbl2BN = dbl2B * -1;
            double dbl2CN = dbl2C * -1;
            double dbl3A = dbl1A + dbl2AN;
            double dbl3B = dbl1B + dbl2BN;
            double dbl3C = dbl1C + dbl2CN;
            Console.WriteLine(dbl3A + "+" + dbl3B + "+" + dbl3C);
            Console.ReadLine();

方程组程序

我假设你正在采取Ax + By = C形式的两个方程的系数,如果是这样的话,过程将与纸上相同。将第二个方程的系数分别乘以A1/A2,然后从第一个方程的相应系数中减去它们(A的结果应该是0),就得到了B*y = C*的方程(其中B*C*是值),可以很容易地解出y。然后将y代回原方程并解出x

我建议你退后一步,考虑一下你期望的变量是什么,你有表达式要计算,什么是要传递给程序的数字。

是"第一个方程A"应该是"3x"或"3x=2"或其他东西的表达式在这里?方程将有等号,因此我怀疑必须解析为左右两边。虽然矩阵反演是编码解决方案的一种途径,但您首先必须让用户输入矩阵的值。例如,假设你有两个方程:x+y=4和x-y=2。请注意,要解决这些问题,您可以将它们相加并得到x=3,而使用基本行运算的减法将得到y=1。

如果你有一个矩阵,其中第一行是:(1,1),第二行是(1,-1),那么你可以使用一个公式来反转它,并生成我关于如何处理2 × 2情况的想法的解,这种情况可能会推广到3 × 3,这对于计算来说可能有点难看。