本题目要求一元二次方程ax ^ 2+bx+c=0的根,结果保留2位小数。

输入格式:
输入在一行中给出3个浮点系数a、b、c,中间用空格分开。

输出格式:
根据系数情况,输出不同结果:

1)如果方程有两个不相等的实数根,则每行输出一个根,先大后小;

2)如果方程有两个不相等复数根,则每行按照格式“实部+虚部i”输出一个根,先输出虚部为正的,后输出虚部为负的;

3)如果方程只有一个根,则直接输出此根;

4)如果系数都为0,则输出"Zero Equation";

5)如果a和b为0,c不为0,则输出"Not An Equation"。

输入样例1:

2.1 8.9 3.5

输出样例1:

-0.44
-3.80

输入样例2:

1 2 3

输出样例2:

-1.00+1.41i
-1.00-1.41i

输入样例3:

0 2 4

输出样例3:

-2.00

输入样例4:

0 0 0

输出样例4:

Zero Equation

输入样例5:

0 0 1

输出样例5:

Not An Equation

#include <stdio.h>
#include <math.h>double a, b, c;
double x1, x2;
double sanjiao;
double p, q;int main()
{scanf("%lf %lf %lf", &a, &b, &c);if (a == 0 && b == 0 && c == 0){printf("Zero Equation");}else if (a == 0 && b == 0 && c != 0){printf("Not An Equation");}else if (a == 0 && b != 0){printf("%.2lf\n", -c * 1.0 / b);}else{sanjiao = b * b - 4 * a * c;if (sanjiao >= 0){x1 = (-b + sqrt(sanjiao)) / (2.0 * a);x2 = (-b - sqrt(sanjiao)) / (2.0 * a);if (x1 == x2){printf("%.2f", x1);}else{if (x1 > x2){printf("%.2f\n%.2f", x1, x2);}else{printf("%.2f\n%.2f", x2, x1);}}}else{p = (-b) / (2 * a);q = sqrt(fabs(sanjiao)) / (2 * a);if (p == 0){p = 0;}printf("%.2f+%.2fi\n", p, q);printf("%.2f-%.2fi", p, q);}}return 0;
}

pta求一元二次方程的根相关推荐

  1. C语言小白初试 7-1 求一元二次方程的根 (20 分)

    7-1 求一元二次方程的根 (20 分) 本题目要求一元二次方程的根,结果保留2位小数. 输入格式: 输入在一行中给出3个浮点系数a.b.c,中间用空格分开. 输出格式: 根据系数情况,输出不同结果: ...

  2. 计算概论(A)/基础编程练习1(8题)/4:求一元二次方程的根

    1 #include<stdio.h> 2 #include<math.h> 3 int main() { 4 // 待解方程数目 5 int n; 6 scanf(" ...

  3. OpenJudge NOI 1.4 20:求一元二次方程的根

    [题目链接] OpenJudge NOI 1.4 20:求一元二次方程的根 [题目考点] 1. 一元二次方程求根 包括求实根与虚根 2. if-else if-else语句 3. 浮点数比较 [解题思 ...

  4. 7-157 求一元二次方程的根 (20 分)

    7-157 求一元二次方程的根 (20 分) 本题目要求一元二次方程ax2+bx+c=0的根,结果保留2位小数. 输入格式: 输入在一行中给出3个浮点系数a.b.c,中间用空格分开. 输出格式: 根据 ...

  5. c语言学习-求一元二次方程的根

    求一元二次方程的根 程序流程图: 代码: #include<stdio.h> #include<math.h> void main() {float a,b,c,s,x1,x2 ...

  6. 实验3-1 求一元二次方程的根 (20 分)

    实验3-1 求一元二次方程的根 (20 分) 本题目要求一元二次方程ax^2+bx+c=0的根,结果保留2位小数. 输入格式: 输入在一行中给出3个浮点系数a.b.c,中间用空格分开. 输出格式: 根 ...

  7. 例题(8.3) 求一元二次方程的根 (1051)

    题目 - 例题(8.3) 求一元二次方程的根 (1051)   来源 计算概论05 描述 利用公式  x1 = (-b + sqrt(b*b-4*a*c))/(2*a)  x2 = (-b - sqr ...

  8. Python 求一元二次方程的根(包括虚根)

    如图所示,求一元二次方程的根(包括虚根),代码如下: import math a = float(input()) b = float(input()) c = float(input()) delt ...

  9. Java求一元二次方程的根

    求一元二次方程的根. [问题描述]编写程序,从键盘输入三个系数ax2+bx+c=0,计算方程的解并输出.需要考虑方程有虚根.方程有实根.方程是一元一次方程.没有根等.输出方程的解并保留6位小数. im ...

最新文章

  1. list.sort(reverse=true) 和 list.reverse() 排序上有什么区别吗?
  2. 我治大学生抄作业毛病的办法——兼答丁又专老师
  3. 杭电1010java实现dfs
  4. linux jsp 环境,Linux系统Jsp的环境:Apache,Tomcat配置
  5. 01-NVIDIA Jetson TX2开箱上电显示界面
  6. POJ 3225 线段树+lazy标记
  7. 基于墨刀的轻音乐播放器——乐享APP原型设计
  8. 一款简约多类PHP导航源码
  9. Atitit 医学之道 attilax总结
  10. 怎么大量转换图片格式为tiff
  11. 项目经理必备向上管理四步法
  12. 【单片机笔记】基于LM358的差分放大,电流检测电路
  13. 项目初始化报 404 Not Found - GET https://registry.npmjs.org
  14. Uni-App - 学习心得
  15. Java斗_Java集合练习:斗地主游戏
  16. 百度离线地图开发教程?
  17. java throw 什么意思_Java中throw和throws有什么区别?
  18. Vue开发中的一些常见套路和技巧(上)
  19. 闪迪u盘格式化 linux,u盘格式化工具安卓版闪迪u盘64g 3.0高速
  20. 对3721上网助手的一些疑问建议

热门文章

  1. P5:用统一的NLP框架建模推荐系统问题
  2. 银联在线Java接口开发
  3. navicat 连接linux mysql_如何在windows下用Navicat Premium连接linux下的Mysql
  4. 分布式图计算系统与算法简单文献综述
  5. 在大学里要作的20件事
  6. VS番茄插件的常用快捷键(提高工作效率)
  7. 分布式任务调度系列 - PowerJob
  8. 记事本编写java代码出现中文乱码
  9. U盘变为只有2M大小空间的解决方法
  10. yum 有趣的linux命令,Centos6中yum方法安装sl(linux有趣命令之一sl跑火车)