/**
* author:johnny zen
* date:2017-09-20 11:19
* function:Calculate Ternary system of equations
* notice:时间仓促,仅仅实现功能,方便使用,代码质量不可参考!!!
*/
#include<iostream>
using namespace std; template<class T>
void input(T matrix[][]){
cout<<"please input matrix element's data"<<endl;
for(int i = ;i<;i++){
for(int j=;j<;j++){
cin>>matrix[i][j];
}
}
cout<<"input ok";
} template<class T>
void calc(T matrix[][]){
T base_D = matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][];//计算行列式
base_D = base_D-(matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][]); if(base_D != ){
T x_D = matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][];
x_D = x_D-(matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][]);
T y_D = matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][];
y_D = y_D-(matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][]);
T z_D = matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][];
z_D = z_D-(matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][] + matrix[][]*matrix[][]*matrix[][]); T x = x_D/base_D;
T y = y_D/base_D;
T z = z_D/base_D;
cout<<"[ x:"<<x<<"; y:"<<y<<"; z:"<<z<<" ]"<<endl;
}else{
cout<<"【无解】";
// return DBL_MIN;
}
}
//计算原理:行列式
int main(){
double matrix[][] ; //三元一次方程组 input<double>(matrix);
calc<double>(matrix);
system("pause");
return ;
}
/*
demo
2x-y+z=10;
3x+2y-z=16;
x+6y-z=28; 2 -1 1 10
3 2 -1 16
1 6 -1 28 output:input ok[ x:4.18182; y:5.09091; z:6.72727 ]
*/

[C++]求解三元一次方程组的更多相关文章

  1. fslove - Matlab求解多元多次方程组

    fslove - Matlab求解多元多次方程组 简介: 之前看到网上的一些资料良莠不齐,各种转载之类的,根本无法解决实际问题,所以我打算把自己的学到的总结一下,以实例出发讲解fsolve. 示例如下 ...

  2. matlab解三元二次方程组

    C1=7.0863; C2=6.8971; C3=0.4929; C4=0.8131; C5=1.8240; C6=3.8108; C7=3.7318; C8=-2.2238; C9=1.9905; ...

  3. 用 GSL 求解超定方程组及矩阵的奇异值分解(SVD)

    用 GSL 求解超定方程组及矩阵的奇异值分解(SVD) 最近在学习高动态图像(HDR)合成的算法,其中需要求解一个超定方程组,因此花了点时间研究了一下如何用 GSL 来解决这个问题. GSL 里是有最 ...

  4. 【Java例题】4.3 3. 使用Gauss消元法求解n元一次方程组的根,

    3. 使用Gauss消元法求解n元一次方程组的根,举例,三元一次方程组:0.729x1+0.81x2+0.9x3=0.6867x1+x2+x3=0.83381.331x1+1.21x2+1.1x3=1 ...

  5. 2013杭州网络赛D题HDU 4741(计算几何 解三元一次方程组)

    Save Labman No.004 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  6. Python最小二乘法解非线性超定方程组

    求解非线性超定方程组,网上搜到的大多是线性方程组的最小二乘解法,对于非线性方程组无济于事. 这里分享一种方法:SciPy库的scipy.optimize.leastsq函数. import numpy ...

  7. math & 三元一次方程组的解法

    math & 三元一次方程组的解法 class 6 math 例题 问题: 1. 已经做好的与没有做好的比例是 5 比 7; 2 再做好51,完成总数的 70%; 3. 问,一共要做多少朵花? ...

  8. poj1222(高斯消元法解异或方程组+开关问题)

    题目链接:https://vjudge.net/problem/POJ-1222 题意:给定一个5×6的01矩阵,改变一个点的状态时它上下左右包括它自己的状态都会翻转,因为翻转2次等价与没有翻转,那么 ...

  9. 牛顿迭代法解非线性方程组(MATLAB版)

    牛顿迭代法,又名切线法,这里不详细介绍,简单说明每一次牛顿迭代的运算:首先将各个方程式在一个根的估计值处线性化(泰勒展开式忽略高阶余项),然后求解线性化后的方程组,最后再更新根的估计值.下面以求解最简 ...

随机推荐

  1. HTMl Dom操作

    訪問: getElementById():帶回指定id的所有元素 getElementByTagName():帶回指定標籤名的所有的元素 getElementByClassName():帶回指定類型名 ...

  2. caffe配置NCCL

    设置Makefile.config 打开开关: USE_NCCL := 1, 并添加nccl库路径 USE_NCCL := 1 INCLUDE_DIRS += /path/nccl/build/inc ...

  3. UOJ #76 【UR #6】懒癌

    确实是一道很不错的题啊. 题目链接 题意 感觉也没什么特别简洁的版本,大家直接看题面吧. 题解 我第一次看到这个类似问题的背景是疯狗,因此下面的题解不自觉的代入了...大家明白意思就好. 我们考虑对于 ...

  4. python 随机数模块 -- random

    一.概述 这个模块实现的伪随机数生成器. 对于整数,从区间选取.对于序列,随机元素. 在实线的,有功能来计算均匀分布,正态分布(高斯) ,对数正态分布,负指数,γ和β分布.对于生成的角度分布,冯·米塞 ...

  5. Migrate Maven Projects to Java 11

    Migrate Maven Projects to Java 11 So you want to migrate to Java 11 but your Maven project is still ...

  6. 自学Linux Shell4.1-监测程序ps top kill

    点击返回 自学Linux命令行与Shell脚本之路 4.1-监测程序ps top kill 1. PS命令 linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的 ...

  7. centos7 安装mysql的正确姿势

    1. 添加MySQL Yum源 MySQL官网>DOWNLOADS>MySQL Yum Repository找到合适版本的yum源 $wget https://dev.mysql.com/ ...

  8. 【codeforces 175D】 Plane of Tanks: Duel

    http://codeforces.com/problemset/problem/175/D (题目链接) 题意 A,B两人玩坦克大战,坦克有生命值,射击间隔,伤害范围,未命中的概率.问A赢的概率是多 ...

  9. 使用debootstrap制作debian-jessie系统docker镜像

    先看一下Docker官网提示:In general, you'll want to start with a working machine that is running the distribut ...

  10. CF710F String Set Queries

    CF710F String Set Queries 支持字符串的插入和删除...SAM也干不了这个事 所以可以用cdq分治+AC自动机O(nlogn)解决 但是本题强制在线~~~ 我们还有一个工具,叫 ...