1475: C语言实验题――一元二次方程 II

描述:求一元二次方程ax2+bx+c=0的解。a,b,c为任意实数。 输入:输入数据有一行,包括a b c的值 输出:按以下格式输出方程的根x1和x2。x1和x2之间有一个空格。x1 x2 (1)如果x1和x2为实根,则以x1>=x2输出。 (2)如果方程是共轭复根,x1=m+ni,x2=m-ni,其中n>0。其中x1, x2, m,n均保留2位小数。 样例输入:1 2 3 样例输出:-1.00+1.41i -1.00-1.41i 提示:复根公式

考点:公式的理解 代码:

#include <stdio.h>
#include <math.h>
int main()
{
    double a,b,c;
    double die;
    double x1,x2;
    double n,m;
    scanf("%lf %lf %lf",&a,&b,&c); //输入a,b,c
    die=b*b-4*a*c;  //求die的值
    if(die>=0) //如果die大于等于0则有值
    {
        x1=(-b+sqrt(die))/(2.0*a);
        x2=(-b-sqrt(die))/(2.0*a);
        if(x1>=x2)
        {
            printf("%.2lf %.2lf",x1,x2);  //保留两位小数
        }else
        {
            printf("%.2lf %.2lf ",x2,x1);
        }
    }else   //die<0求共轭复根
    {
        n=sqrt(-die)/(2.0*a);
        m=-b/(2.0*a); 
        if (n<0)
            n=-n;
        printf("%.2lf+%.2lfi ",m,n);   
        printf("%.2lf-%.2lfi",m,n);
    }
    return 0;
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏bboysoul

1067: 成绩评估

描述:我们知道,高中会考是按等级来的。90~100为A; 80~89为B; 70~79为C; 60~69为D; 0~59为E。 编写一个程序,对输入的...

892
来自专栏ml

cf------(round)#1 C. Ancient Berland Circus(几何)

C. Ancient Berland Circus time limit per test 2 seconds memory limit per test ...

2533
来自专栏移动开发面面观

OpenGL ES——导入.stl格式的3D模型

2164
来自专栏转载gongluck的CSDN博客

H.264格式分析

一.H.264基本流结构 H.264 的基本流(elementary stream,ES)的结构分为两层,包括视频编码层(VCL)和网络适配层(NAL)。视频编...

7525
来自专栏mwangblog

整数的存储:符号加绝对值表示法

1302
来自专栏生信小驿站

Python数据处理从零开始----第四章(可视化)(7)(多图合并)目录正文

=========================================================

871
来自专栏数据结构与算法

2-SAT速成

本文只做总结性说明 2-SAT 2-SAT是k-SAT问题的一种,k-SAT问题在k>=3时已经被证明是NP完全问题 2-SAT问题定义比较简单 有n个布尔变量...

2856
来自专栏云霄雨霁

子字符串查找----各种算法总结

2480
来自专栏Phoenix的Android之旅

一张图看懂开发和运营的思维差别

用Dijkstra算法很简单,我们需要 · 用 6*6矩阵 source[6][6]表示点之间的距离,也就是图中的权值 · 自己与自己的距离为0,无直接连接的距...

801
来自专栏小鹏的专栏

tensorflow使用BN—Batch Normalization

注意:不要随便加BN,有些问题加了后会导致loss变大。 上一篇是 Batch Normalization的原理介绍,看一下tf的实现,加到卷积后面和全连接层...

1K7

扫码关注云+社区

领取腾讯云代金券