Python-解三元一次方程
需要解的方程组为:
x + y + z = 26
x - y = 1
2x - y + z = 18
下面进入代码实现:
1.导入数学计算库 numpy
import numpy as np
2.生成未知数系数的三维数组,注意位置对应
W = np.array([[1,1,1],[1,-1,0],[2,-1,1]])
3.由方程组的值形成数组
result = np.array([26,1,18])
4.求得W逆矩阵W_inv
W_inv = np.linalg.inv(W)
5.
由方程未知数(x,y,z)形成的数组:vxyz = np.array([x,y,z]),
得到以上方程式的矩阵乘法等式:W * vxyz = result,
让等式两边点乘W的逆矩阵,
得到等式:np.dot(Winv,W*vxyz) = np.dot( W_inv,result),
其中W_inv式W的逆矩阵,np.dot()是矩阵点乘函数,
由于矩阵与其逆矩阵相乘得1,进一步推导出 vxyz = np.dot( W_inv, result),
求得 vxyz 的值,即求得该方程组的解
vxyz = np.dot(W_inv,result)
6.打印出求得的系数
v = list(vxyz)
print("得到的值:")
print("x=%d" %v[0])
print("y=%d" %v[1])
print("z=%d" %v[2])
7.运行结果
x = 10
y = 9
z = 7
这个程序可以进一步扩展,例如增加未知数的个数,随着未知数不断增多,会逐渐感受到程序解方程的效率。
结束语:
最近真是

to be continued...
Python-解三元一次方程的更多相关文章
- 2013杭州网络赛D题HDU 4741(计算几何 解三元一次方程组)
Save Labman No.004 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Other ...
- python解一元一次方程
将未知数看成是虚数 将常数看成是实数 最终求解. import re class Item: def __init__(self,imag=0,real=0): self.imag = imag se ...
- math & 三元一次方程组的解法
math & 三元一次方程组的解法 class 6 math 例题 问题: 1. 已经做好的与没有做好的比例是 5 比 7; 2 再做好51,完成总数的 70%; 3. 问,一共要做多少朵花? ...
- python 解压 压缩包
转 http://m.blog.csdn.net/blog/wice110956/26597179# 这里讨论使用Python解压如下五种压缩文件: .gz .tar .tgz .zip .rar ...
- python解无忧公主的数学时间编程题001.py
python解无忧公主的数学时间编程题001.py """ python解无忧公主的数学时间编程题001.py http://mp.weixin.qq.com/s?__b ...
- python解无忧公主的数学时间097.py
python解无忧公主的数学时间097.py """ python解无忧公主的数学时间097.py codegay 2016年3月30日 00:17:26 http:// ...
- python解无忧公主数学题107.py
python解无忧公主数学题107.py """ python解无忧公主数学题107.py http://mp.weixin.qq.com/s?__biz=MzI5ODE ...
- python解无忧公主数学题108
""" python解无忧公主数学题108回文.py 题目来源: http://mp.weixin.qq.com/s?__biz=MzI5ODEwMDQyNw==& ...
- 关于Python 解包,你需要知道的一切
解包在英文里叫做 Unpacking,就是将容器里面的元素逐个取出来(防杠精:此处描述并不严谨,因为容器中的元素并没有发生改变)放在其它地方,好比你老婆去菜市场买了一袋苹果回来分别发给家里的每个成员, ...
- Python基础-Python的三元运算符和lambda表达式
1. Python的三元表达式: 现在大部分高级语言都支持 “?”这个三元运算符,它对应的表达式如下:condition ? value if true:value if else 但是 Python ...
随机推荐
- 鲁迅文集 第3卷 而已集 华盖集续编 华盖集 热风\四十一.md
目录 导读 正文 导读 本篇首次发表于1919年1月15日<新青年>第六卷第一号.署名唐俟. 文章以生物进化的事实,驳斥旧势力对改革者的嘲讽,号召青年蔑视反改革者的冷笑和暗箭,&quo ...
- Linux env commands
1.新机新增root 密码 sudo passwd root 2.新增用户密码 sudo passwd YOUR_USER_NAME NEW PW: NEW PW: 3.SSH Server sudo ...
- 持续集成环境(2)-Jenkins插件管理
Jenkins本身不提供很多功能,我们可以通过使用插件来满足我们的使用.例如从Gitlab拉取代码,使用 Maven构建项目等功能需要依靠插件完成.接下来演示如何下载插件. 修改Jenkins插件下载 ...
- 12-XXE漏洞
1.概述 <!--第一部分:XML声明--> <?xml version="1.0"?> <!--第二部分:文档类型定义DTD--> <! ...
- js 小数和百分数的转换
百分数转化为小数 function toPoint(percent){ var str=percent.replace("%",""); str= str/10 ...
- Go_day07
Go常用包 包的本质:创建不同的文件夹,来存放程序文件 Go语言的源码复用建立再包package基础之上 main包 Go语言的入口 main()函数所在的包必须是main包 main包需要引用代码, ...
- 实验2 数组、指针与C++标准库
实验任务5: Info.hpp #ifndef INFO_HPP #define INFO_HPP #include<iostream> #include<iomanip> # ...
- IPAD变成电脑的副屏
IPAD变成电脑的副屏方法一:把平板电脑变成显示器:Splashtop Wired XDisplayhttps://www.splashtop.cn/cn/wiredxdisplay方法二:space ...
- 局部异常因子(Local Outlier Factor, LOF)算法详解及实验
局部异常因子(Local Outlier Factor, LOF)通过计算样本点的局部相对密度来衡量这个样本点的异常情况,可以算是一类无监督学习算法.下面首先对算法的进行介绍,然后进行实验. LOF算 ...
- 【Keil】浅学一下keil中的.sct文件
[Keil]浅学一下keil中的.sct文件 最近重新捣鼓了acfly的源码,有了新的有趣发现,当然,过程并不有趣. 起因 clone下来我去年提交的代码,编译 ...... 报错辣! linking ...