我是靠谱客的博主 贪玩蜜粉,最近开发中收集的这篇文章主要介绍python画多函数方程_再接再厉,用python编程13行代码解方程组(纯字符),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

f041aae593b73ed3356e9c3ba1509c45.png

因为是示例为主,我们将方程组限制在二元一次方程组:x,y两个变量,两个方程。类似这样:

95ac9b73dbe3cced825da102e664444e.png

每个方程有两个变量,x和y,形式为:ax+by+c=d

由于这次有了两个方程,我们提取参数的代码就适合提炼为一个独立的函数。获取两个方程的参数都可以调用一个函数。这是代码组织的一个基本思想。

这里又涉及到了函数多个返回值的功能,这是相当实用的功能。

看过前面两篇文章《用python编程7行代码解数学方程(ax+b=c的形式) 》和《python编程解方程第二弹:10行代码解二次方程(纯字符) 》,对于通过切割字符串来提取参数的技巧应该已经非常了解了,本篇对此不展开,见代码即可。

这里提一下的是,解方程组的通用方法。寻求通用方法,是编程的一个基本思路。

上面图中任何一个具体的方程组,相信读者朋友都能求解,那么对于一个一般的方程组怎样求解呢?想弄懂这个问题的读者,学历至少必须达到或超过初二下学期

方程1:a1*x + b1*y + c1 = d1

方程2:a2*x + b2*y + c2 = d2

通用解法:

第一步:方程1等号两边同乘b2,方程2等号两边同乘b1

第二步:方程1减去方程2

这就消去了变量y

得到 (a1*b2-a2*b1)x+(c1*b2-c2*b1)=d1*b2-d2*b1

简单得到x=((d1-c1)*b2-(d2-c2)*b2)/(a1*b2-a2*b1)的公式

用同样的方法消去变量x,得到y的解决=((d1-c1)*a2-(d2-c2)*a1)/(-a1*b2+ a2*b1)

上代码:

bf5fc179ba4b4375c34d48c9b279fa38.png

注意到获取参数的函数getParm,仍然做了一定程度的简化,有兴趣的朋友可以把它完善以适应各种复杂的情况。

而解方程组的函数solv3,结构相当简单,就是利用前面推导的公式。

测试一下:

fa0d85ec595115c47f658ebfa99b60c5.png

得到结果:

5104886eb9af9852df58cc9316283e1b.png

最后

以上就是贪玩蜜粉为你收集整理的python画多函数方程_再接再厉,用python编程13行代码解方程组(纯字符)的全部内容,希望文章能够帮你解决python画多函数方程_再接再厉,用python编程13行代码解方程组(纯字符)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部