A. python怎么求解一元二次方程的根
import numpy as np
def solve_quad(a,b,c):
if a == 0:
print('您输入的不是二次方程!')
else:
delta = b*b-4*a*c
x = -b/(2*a)
if delta == 0:
print('方程有惟一解,X=%f'%(x))
return x
elif delta > 0:
x1 = x-np.sqrt(delta)/(2*a)
x2 = x+np.sqrt(delta)/(2*a)
print('方程有两个实根:X1=%f,X2=%f'%(x1,x2))
return x1,x2
else:
x1 = (-b+complex(0,1)*np.sqrt((-1)*delta))/(2*a)
x2 = (-b-complex(0,1)*np.sqrt((-1)*delta))/(2*a)
print(x1,x2)
return x1,x2
Python
是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
B. 怎么用python解一元二次方程
importmath
#2x**2+3*x+0=0
defquadratic_equation(a,b,c):
t=math.sqrt(pow(b,2)-4*a*c)
if(pow(b,2)-4*a*c)>0:
return(-b+t)/(2*a),(-b-t)/(2*a)
elif(pow(b,2)-4*a*c)==0:
return(-b+t)/(2*a)
else:
returnNone
printquadratic_equation(2,3,0)
C. 怎么用python解一元二次方程,用判断语句
import math#2x**2+3*x+0 = 0def quadratic_equation(a, b, c): t = math.sqrt(pow(b, 2) - 4 * a * c) if(pow(b, 2) - 4 * a * c) > 0: return (-b + t) / (2 * a), (-b - t) / (2 * a) elif (pow(b, 2) - 4 * a * c) == 0: return (-b + t) / (2 * a) else: return Noneprint quadratic_equation(2, 3, 0)
D. 如何循环python解一元二次方程
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import numpy as np
def solve_quad(a,b,c):
if a == 0:
print('您输入的不是二次方程!')
else:
delta = b*b-4*a*c
x = -b/(2*a)
if delta == 0:
print('方程有惟一解,X=%f'%(x))
return x
elif delta > 0:
x1 = x-np.sqrt(delta)/(2*a)
x2 = x+np.sqrt(delta)/(2*a)
print('方程有两个实根:X1=%f,X2=%f'%(x1,x2))
return x1,x2
else:
x1 = (-b+complex(0,1)*np.sqrt((-1)*delta))/(2*a)
x2 = (-b-complex(0,1)*np.sqrt((-1)*delta))/(2*a)
print('方程有两个虚根,如下所示:')
print(x1,x2)
return x1,x2
E. 用python求二元一次方程的根,显示math domain error,错在哪
楼上说的非常正确,给大家个参考程序吧,我也正遇到过,使用Python的错误判断输出结果就可以了
importmath
defcalcRoot(a,b,c):
#a,b,c=int(a),int(b),int(c)
try:
value=b**2-4*a*c#b*b-4*a*c
sq=math.sqrt(value)
x1=(-b+sq)/(2*a)
x2=(-b-sq)/(2*a)
ifx1==x2:
#returnx1
print('x1=x2=%.2f'%x1)
else:
#return'%.2f'%x1,round(x2,2)
print('x1=%.2f x2=%.2f'%(x1,x2))
except:
print('该方程无根')
calcRoot(13,-100,31)
#print(re)
运行以上程序,就能看到下面效果了;输出加了格式化,否则输出的是一长串浮点数
F. 用python如何得到一个方程的多个解
方法/步骤
用Python解数学方程,需要用到Python的一个库——SymPy库。
SymPy是符号数学的Python库,它的目标是成为一个全功能的计算机代数系统,同时保持代码简洁、易于理解和扩展。
如果你的电脑上还没有安装sympy库,那就赶紧安装吧,安装命令:
pip3 install sympy
G. 如何用python编程求解二元一次方程组。如x+y=3;x-y=1
利用 numpy 很简单。可以利用pip安装
pipinstallnumpy
然后(以你的方程为例),python 下
Python2.7.10(default,Oct232015,19:19:21)
[GCC4.2.1CompatibleAppleLLVM7.0.0(clang-700.0.59.5)]ondarwin
Type"help","right","credits"or"license"formoreinformation.
>>>importnumpyasnp
>>>a=np.array([[1,1],[1,-1]])
>>>b=np.array([3,1])
>>>printnp.linalg.solve(a,b)
[2.1.]
如果你学过 线性代数,那么这段代码很好理解。
H. 用python求一元二次方程的解
编程最好的方法就是实践,当你能处理绝大多数例子之后,你会发现很多难懂的概念也就自然的解决了。python编程最好的方法就是实践,当你能处理绝大多数例子之后,你会发现很多难懂的概念也就自然的解决了。
一元二次方程为:ax^2+bx+c=0
我们先编写一个最简单的版本,我们成功的计算除了数值。下面这个程序不适合复数形式
I. python求解二元一次方程组(行列式)编一个程序
#a1x+b1y=c1
#a2x+b2y=c2
defsolve(a1,b1,c1,a2,b2,c2):
ifa1==0anda2!=0:
x=(c2-b2*c1/b1)/a2
y=c1/b1
elifa1!=0anda2==0:
x=(c1-b1*c2/b2)/a2
y=c2/b2
elifb1==0andb2!=0:
x=c1/a1
y=(c2-a2*c1/a1)/b2
elifb1!=0andb2==0:
x=c2/a2
y=(c1-a1*c2/a2)/b1
ifa1*b2-a2*b1!=0:
x=(b2*c1-b1*c2)/(a1*b2-a2*b1)
y=(a1*c2-a2*c1)/(a1*b2-a2*b1)
else:
x='error'
y='error'
returnx,y
a1=int(raw_input('a1='))
b1=int(raw_input('b1='))
c1=int(raw_input('c1='))
a2=int(raw_input('a2='))
b2=int(raw_input('b2='))
c2=int(raw_input('c2='))
x,y=solve(a1,b1,c1,a2,b2,c2)
e1=str(a1)+'*x+'+str(b1)+'*y='+str(c1)
e2=str(a2)+'*x+'+str(b2)+'*y='+str(c2)
print' ',e1,' ',e2
print'x='+str(x),' y='+str(y)
J. python求一元二次函数
######python求标准的一元二次方程的解###############
a,b,c= map(float,input("请输入aX^2+bX+c=0,函数中的三个参数:(空格隔开)").split())
###使用公式b^2-4ac判定是否有解b^2-4ac####
i=b*b-4*a*c
if i<0:
print("该方程无实数解!")
elif i==0:
print("该方程解为:%.2f"%((-1)*b/(2*a)))#有一个解
else:
print("该方程解为:%.2f或%.2f"%((((-1)*b+i**0.5)/(2*a)),(((-1)*b-i**0.5)/(2*a))))
该方法运用是运用公式求解,保留两位小数,只能求实数解,供参考,有问题可追问