python函数解方程,python解数学方程

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中久经考验的函数式程序设计工具。

用python如何得到一个方程的多个解

方法/步骤

用Python解数学方程,需要用到Python的一个库——SymPy库。

SymPy是符号数学的Python库,它的目标是成为一个全功能的计算机代数系统,同时保持代码简洁、易于理解和扩展。

如果你的电脑上还没有安装sympy库,那就赶紧安装吧,安装命令:

pip3 install sympy

请点击输入图片描述

先来解一个简单点的方程吧。

题目: 5x + 20 = 100

先直接上代码:

from sympy import *

x = Symbol('x')

print(solve([5*x + 20 - 100], [x]))

请点击输入图片描述

再来一个复杂点的二元一次方程吧。

题目:3x + 4y =49, 8x- y = 14

代码如下:

from sympy import *

x = Symbol('x')

y = Symbol('y')

print(solve([3*x + 4*y - 49, 8*x - y - 14], [x, y]))

请点击输入图片描述

有没有发现规律呢,简单总结一下:

1)变量赋值,使用symbol函数转换;

2)将方程式移到方程的左边,使右边等于0;

3)使用solve函数解方程。

当然了,python的基础语法必须掌握,至少需要掌握python最基础的算数运算符。

+  加 ---- 两个对象相加

-  减 ----- 得到负数或是一个数减去另一个数

*  乘 ----- 两个数相乘或是返回一个被重复若干次的字符串

/  除 ----- x 除以 y

%  取模 ----- 返回除法的余数

**  幂 ----- 返回x的y次幂

log()  对数-----对数 log()

下面来个难度大点的方程。

请点击输入图片描述

代码如下:

from sympy import *

t = Symbol('t')

x = Symbol('x')

m = integrate(sin(t)/(pi-t), (t, 0, x))

print(integrate(m, (x, 0, pi)))

请点击输入图片描述

怎么用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('方程有两个虚根,如下所示:')

print(x1,x2)

return x1,x2

在Python下编写一个函数,求方程ax^2+bx+c=0的根,用三个函数分别求当b^2-4ac大于0

import math

a=int(input('请输入a的值:'))

b=int(input('请输入b的值:'))

c=int(input('请输入c的值:'))

derta=(b**2-4*a*c)

if a == 0:

print('您输入的a为0,方程ax^2+bx+c=0不能作为一元二次方程')

elif derta0:

print('方程无实数解')

elif derta==0:

print('方程有解,有一个实数解:')

print(b*(-1)/(a*2))

else:

print('方程有解,有两个实数解:')

print((-1*b+math.sqrt(derta))/2*a)

print((-1*b-math.sqrt(derta))/2*a)


网站名称:python函数解方程,python解数学方程
文章URL:http://scyanting.com/article/dsigsse.html