成都网站建设设计

将想法与焦点和您一起共享

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

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

import math

创新互联主要从事成都网站制作、网站设计、外贸网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务武宣,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

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解数学方程,需要用到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(x1,x2)

return x1,x2

Python

是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。

python 二分法解方程

def erfen(low,high):

while low high:

mid=(low+high)/2

if f(low)*f(mid)0:

high=mid

elif f(mid)*f(high )0:

low=mid

return mid

这个函数没有结束 检查一下如何设置退出条件


分享标题:python解方程函数 python解数学方程
浏览路径:http://chengdu.cdxwcx.cn/article/hgpjoh.html