函数解一元二次方程

  public int qiufangcheng(int a, int b, int c, out double x1, out double x2)
        {
            int jieguo = 0;
            x1 = 0;
            x2 = 0;
            if (a == 0)
            {
                jieguo = -1;
            }
            else 
            {
                int dert = b * b - 4 * a * c;
                if (dert < 0)
                {
                    jieguo = 0;
                }
                if (dert == 0)
                {
                    jieguo = 1;
                    x1 = -b / 2 * a;
                    x2 = -b / 2 * a;
                }
                if (dert > 0)
                {
                    jieguo = 2;
                    x1 = (-b + Math.Sqrt(dert)) / 2 * a;
                    x2 = (-b - Math.Sqrt(dert)) / 2 * a;
                }
            }
            return jieguo;
        }




   static void Main(string[] args)
        {
              while (true)
            {
                Console.Write("a=");
                int a = int.Parse(Console.ReadLine());
                Console.Write("b=");
                int b = int.Parse(Console.ReadLine());
                Console.Write("c=");
                int c = int.Parse(Console.ReadLine());
                double x1;
                double x2;
                int jieguo = new Program().qiufangcheng(a, b, c, out x1, out x2);
                if (jieguo == 0)
                {
                    Console.WriteLine("无实根");
                }
                if (jieguo == -1)
                {
                    Console.WriteLine("不是一元二次方程");
                }
                if (jieguo == 1)
                {
                    Console.WriteLine("相等的根x1={0},x2={1}", x1, x2);
                }
                if (jieguo == 2)
                {
                    Console.WriteLine("两个不相等的根x1={0},x2={1}", x1, x2);
                }
            }
          
            Console.ReadLine();
        }

 

转载于:https://www.cnblogs.com/xuxuefeng8906/p/4582373.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值