| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 398 人关注过本帖
标题:新手求教(在线等!)
只看楼主 加入收藏
wanyuxin
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-10-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
新手求教(在线等!)
各位大虾好
本人是刚学C#一个月不到的菜鸟最近老师布置作业根据所学知识编辑一个一元二次方程代码
编辑的如下:
public static void Cacl()
        {
            try
            {
                Console.Write("请输入实数a的值:");
                double a = double.Parse(Console.ReadLine());
                Console.Write("请输入第一个运算符号:");
                string s = Console.ReadLine();
                Console.Write("请输入实数b的值:");
                double b = double.Parse(Console.ReadLine());
                Console.Write("请输入第二个运算符号:");
                string s1 = Console.ReadLine();
                Console.Write("请输入实数c的值:");
                double c = double.Parse(Console.ReadLine());
                double d = Math.Sqrt(b * b - 4 * a * c);
                if (a == 0)
                {
                    Console.WriteLine("该方程为{0}x{1}{2}=0,其值x为:{3}", b, s1, c, -c / b);
                }
                else
                {
                    Console.WriteLine("一元二次方程{0}x2{1}{2}x{3}{4}=0,X1的值为:{5:F2}", a, s, b, s1, c, (-b + d) / (a + a));
                    Console.WriteLine("一元二次方程{0}x2{1}{2}x{3}{4}=0,X2的值为:{5:F2}", a, s, b, s1, c, (-b - d) / (a + a));
                }
            }
            catch
            {
                Console.WriteLine("运算错误,请检查!并输入正确数字与计算符号");
            }
在最终计算结果的时候 有时候计算结果会弹出 “非数字”三个字 请问这是什么问题?? 应该怎样解决?
先谢谢各位了!!!
搜索更多相关主题的帖子: 在线 
2009-10-25 15:26
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
收藏
得分:20 
double d = Math.Sqrt(b * b - 4 * a * c); 

负数没有平方根的啦

天涯无岁月,歧路有风尘,百年浑似醉,是非一片云
2009-10-25 17:33
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
收藏
得分:0 
判别式Δ(b2-4ac) 小于0时候只有虚根


[ 本帖最后由 jedypjd 于 2009-10-25 17:40 编辑 ]

天涯无岁月,歧路有风尘,百年浑似醉,是非一片云
2009-10-25 17:39
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
收藏
得分:0 
程序代码:
using System; 
using System.Collections.Generic; 
using System.Text; 
 
namespace ConsoleApplication12 
{ 
    class Program 
    { 
        static void Main(string[] args) 
        { 
            try 
            { 
                Console.Write("请输入实数a的值:"); 
                double a = double.Parse(Console.ReadLine()); 
                Console.Write("请输入第一个运算符号:"); 
                string s = Console.ReadLine(); 
                Console.Write("请输入实数b的值:"); 
                double b = double.Parse(Console.ReadLine()); 
                Console.Write("请输入第二个运算符号:"); 
                string s1 = Console.ReadLine(); 
                Console.Write("请输入实数c的值:"); 
                double c = double.Parse(Console.ReadLine()); 
 
                double delta = b * b - 4 * a * c; 
 
                if (a == 0) 
                { 
                    Console.WriteLine("该方程为{0}x{1}{2}=0,其值x为:{3}", b, s1, c, -c / b); 
                } 
                else if (delta >= 0) 
                { 
                    double d = Math.Sqrt((b * b - 4 * a * c)); 
                    Console.WriteLine("一元二次方程{0}X^2{1}{2}X{3}{4}=0,X1的值为:{5}", a, s, b, s1, c, (-b + d) / (a + a)); 
                    Console.WriteLine("一元二次方程{0}X^2{1}{2}X{3}{4}=0,X2的值为:{5:F2}", a, s, b, s1, c, (-b - d) / (a + a)); 
                } 
                else 
                { 
                    double e = Math.Sqrt((-b * b + 4 * a * c)); 
                    Console.WriteLine("一元二次方程{0}X^2{1}{2}X{3}{4}=0,X1的值为:{5} + ({6}i)", a, s, b, s1, c, (-b) / (a + a), (e) / (a + a)); 
                    Console.WriteLine("一元二次方程{0}X^2{1}{2}X{3}{4}=0,X2的值为:{5} + ({6}i)", a, s, b, s1, c, (-b) / (a + a), (-e) / (a + a)); 
                } 
            } 
            catch 
            { 
                Console.WriteLine("运算错误,请检查!并输入正确数字与计算符号"); 
            } 
            Console.ReadLine(); 
        } 
    } 
} 


天涯无岁月,歧路有风尘,百年浑似醉,是非一片云
2009-10-25 17:51
快速回复:新手求教(在线等!)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013783 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved