前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python求解一元二次方程根

Python求解一元二次方程根

作者头像
Python小屋屋主
发布于 2018-04-16 08:27:59
发布于 2018-04-16 08:27:59
2.4K0
举报
文章被收录于专栏:Python小屋Python小屋

本文使用Python实现一元二次方程求根公式,主要演示运算符和几个内置函数的用法,封面图片与本文内容无关。

def root(a, b, c, highmiddle=True): #首先保证接收的参数a,b,c都是数字,并且a不等于0 #由于计算机表示实数时存在精度的问题,所以不能使用==来判断实数是否为0 #函数的最后一个参数highmiddle为True表示高中,False表示初中 if not isinstance(a, (int, float, complex)) or abs(a)<1e-6: print('error') return if not isinstance(b, (int, float, complex)): print('error') return if not isinstance(c, (int, float, complex)): print('error') return

#delta<0时无解 d = b**2 - 4*a*c #根据一元二次方程求根公式进行计算 #当d<0时,在实数域内无解,d**0.5会得到复数 x1 = (-b + d**0.5) / (2*a) x2 = (-b - d**0.5) / (2*a)

if isinstance(x1, complex): if highmiddle: #高中阶段需要考虑复数根,实部和虚部都保留3位小数 x1 = round(x1.real, 3) + round(x1.imag, 3)*1j x2 = round(x2.real, 3) + round(x2.imag, 3)*1j return (x1, x2) else: #初中阶段只考虑实数根 print('no answer') return #如果是实数根,保留3位小数 return (round(x1,3), round(x2,3))

r = root(1, 2, 4) if isinstance(r, tuple): print('x1={0[0]}\nx2={0[1]}'.format(r))

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-01-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python小屋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用Python来解一元二次方程
解一元二次方程是高中数学中的重要内容,也是数学中的基础知识之一。在Python语言中,我们可以使用数学库中的函数来解一元二次方程。一元二次方程的一般形式为:ax²+bx+c=0,其中a、b、c为已知数,x为未知数。解一元二次方程的方法有多种,其中最常用的方法是求根公式。求根公式为:x=(-b±√(b²-4ac))/2a 在Python语言中,我们可以使用math库中的sqrt函数来求平方根,使用pow函数来求幂次方。下面是一个解一元二次方程的Python程序:
算法与编程之美
2023/12/03
1.1K0
用Python来解一元二次方程
利用python快速解决一元二次方程
在日常的数学计算中,一元二次方程得到了广泛的运用。中学常见的方法有十字相乘法和利用求根公式。俩种方法都很简便,但python能做到更快,作为数学基础运算,用更快的python去精确解决更便于解决下一个数学问题。
算法与编程之美
2024/01/04
2920
利用python快速解决一元二次方程
一元二次方程求解
问题 通过键盘输入系数a,b,c,求一元二次方程的实根,要求判断有无实根 训练提示 ax^2+bx+c=0,a\neq 0 \\Delta=b^2-4ac \If \quad \Delta \geq 0 \quad Then \\quad x_1=\displaystyle \frac{-b+\sqrt{b^2-4ac}}{2a} \\quad x_2=\displaystyle \frac{-b-\sqrt{b^2-4ac}}{2a} \ 参考答案 public class help { pub
777nx
2023/05/02
3680
求一元二次方程根
一元二次方程ax2+bx+c=0,a、b、c的值由用户在三行中输入,根据用户输入的数值求解方程的实数解:
算法与编程之美
2023/10/06
2850
求一元二次方程根
python求解一元二次方程
我也不知道讲什么,你先想想你解数学题的时候,解方程的数学公式是什么?知道公式再直接转换为代码就ok.有问题留言,我不喜欢多里巴嗦。
川川菜鸟
2021/10/18
4.3K0
C语言实例之求三角形面积、解一元二次方程
输入三个数分别代表三角形的三个边长,运用三角形的性质:任意两边之和大于第三边,判断三边是否可以构成一个三角形,若能构成三角形,则可求出该三角形的面积。
程序员小顺
2021/10/13
1K0
python教程7--python解二元一次方程ax²+bx+c=0
1.先回忆一下ax2+bx+c=0这个一元二次方程的数学解法 2.python实现 在我们知道求根公式后,我们用python来实现一下: def my_quadratic(a,b,c): if
IT云清
2019/01/22
5.2K0
Python求一元二次方程解「建议收藏」
题目: 请定义一个函数 ’quadratic(a,b,c)‘,接收三个参数,返回一元二次方程: ax² + bx + c = 0 的两个解。(提示:计算平方根可以调用math.sqrt()函数)
全栈程序员站长
2022/09/08
9100
【Python实践-1】求一元二次方程的两个解[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/156071.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/07
5430
python_求解一元二次方程解
#求解一元二次方程解 import math x1 = float(10 + math.sqrt(math.pow(10, 2) - 4 * 1 * 16))/(2 * 1) x2 = float(10 - math.sqrt(math.pow(10, 2) - 4 * 1 * 16))/(2 * 1) print(str.format(“方程 x * x - 10 * x + 16 = 0的解为:{0:.2f} {1:.2f}”, x1, x2))
瑞新
2020/07/08
7260
【C语言程序设计——选择结构程序设计】求一元二次方程的根(头歌实践教学平台习题)【合集】
的两个实根,要求精确道小数点后2位。要求方程系数从键盘输入。如果输入的系数不满足求实根要求,输出提示信息“此方程没有实根”。
Rossy Yan
2024/12/24
1350
【C语言程序设计——选择结构程序设计】求一元二次方程的根(头歌实践教学平台习题)【合集】
求一元二次方程的解
想必大家都在初中学习过求一元二次方程的解,首先我们要判断一个函数是否为一元二次函数(形如:ax2+bx+c=0),当a值不为0才是一元二次函数,并且当b2-4ac>=0时才有解。
算法与编程之美
2022/02/17
6980
求一元二次方程的解
记录下来,因为我容易忘 #include<stdio.h> #include<math.h> int main() { double a, b, c; scanf("%lg%lg%lg", &a, &b, &c); printf("原方程为:%g*x*x + %g*x + %g = 0\n", a, b, c); if (a == 0) { if (b == 0) { if (c == 0) { printf("\nx可以为任意值"); } else
砖业洋__
2023/05/06
2120
求一元二次方程的解
编写函数求解一元二次方程
在学习Python的过程中,我们知道Python自带有不少函数,但仍有许多函数需要操作者自己编写定义。在Python中,定义一个函数要使用def语句。下面我们就来编写定义一个简单的函数来求解一元二次方程吧。
算法与编程之美
2022/01/04
8570
python计算二次方程的实根
python计算二次方程的实根程序 #计算二次方程的实根程序 import math def fun(): print("This program finds the real solutions to a quadraic\n") a,b,c=eval(input("please enter the coefficients(a,b,c):")) delta=b*b-4*a*c if a==0: x=-b/c print("\nThere
week
2020/04/27
1.1K0
数学 | 你不了解的一元二次方程求解解法
解法3中可以看到,比以前大家熟知的解法2的优势在于,我们不用去猜两个数,而是给出了一种计算的方法来做,就避免了人为的猜的因素。
算法与编程之美
2020/02/21
4850
数学 | 你不了解的一元二次方程求解解法
【初学者入门C语言】之习题篇(二)
个人主页:天寒雨落的博客_CSDN博客-C,CSDN竞赛,python领域博主 💬 刷题网站:一款立志于C语言的题库网站蓝桥杯ACM训练系统 - C语言网 (dotcpp.com)  特别标注:该博主将长期更新c语言内容,初学c语言的友友们,订阅我的《初学者入门C语言》专栏,关注博主不迷路! 目录 一、求一元二次方程的解 1.题目 2.思路 3.代码 补充知识点 1.math.h 2.控制输出格式 二、猜数字游戏 1.题目 2.代码 3.执行结果 三、总结  ---- 一、求一元二次方程的解
天寒雨落
2022/11/20
6110
【初学者入门C语言】之习题篇(二)
华裔教授发现二次方程「极简」解法:丢掉公式,全球教科书可能都要改了
近日,一篇名为《A Simple Proof of the Quadratic Formula》的研究出现在了论文预印版发布平台 arXiv 上,并获得了人们的关注。
机器之心
2019/12/11
1.6K0
华裔教授发现二次方程「极简」解法:丢掉公式,全球教科书可能都要改了
一元二次方程极简新解法!CMU华裔奥数总教头提出,网友质疑:这不就是韦达定理吗?
二次方程可谓是人类在数学探索的伟大成就之一,它最早是在公元前2000年到1600年,被古巴比伦人提出用于解决赋税问题。在4000多年后的今天,二次方程被用来解决更多样更复杂的数学应用问题,数以百万计的人(尤其是学生)都努力把二次方程公式铭刻在他们的脑海中。
大数据文摘
2019/12/18
1.3K0
一元二次方程极简新解法!CMU华裔奥数总教头提出,网友质疑:这不就是韦达定理吗?
求二元二次方程的解
解题思路:首先对于解二元二次方程,对于两个未知数来说,就要用两个循环来确定这个值,最后用一个条件判断语句确定两个值的范围,得出结果,也可以附加(x<=y)来减少运算结果。而对于求无解的情况时,我们可以在前面添加一个简单的条件语句如:soul = 0,来区分两种情况。
算法与编程之美
2021/11/23
3900
推荐阅读
相关推荐
用Python来解一元二次方程
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档