菜鸟实现 PHP 二阶、三阶行列式计算和矩阵运算的加、减、乘
1 <?php 2 3 //三阶行列式计算 函数名嘛,看懂就好 4 function sanjie($array){ 5 $k=$array[0]*$array[4]*$array[8]*+$array[1]*$array[5]*$array[6]*+$array[2]*$array[3]*$array[7]-($array[2]*$array[4]*$array[6]*+$array[1]*$array[3]*$array[8]*+$array[0]*$array[5]*$array[7]); 6 echo $k; 7 echo "<br />"; 8 } 9 10 //二阶行列式计算 11 function erjie($array){ 12 13 $k=$array[0]*$array[3]-$array[1]*$array[2]; 14 echo $k; 15 echo "<br />"; 16 } 17 18 19 //矩阵运算 加法 20 function juzhen_plus($array1,$b,$array2){ //b是列数 21 22 $n=count($array1); 23 $c=array(); 24 for ($i=0;$i<$n;$i++){ 25 26 $c[$i]=$array1[$i]+$array2[$i]; 27 28 } 29 echo "|"; 30 for ($i=0;$i<$n;$i++){ 31 $j=$i+1; 32 echo $c[$i]; 33 echo " "; 34 if($j%$b==0){ 35 echo "|"; 36 echo "<br />"; 37 if ($i!=($n-1)) 38 echo "|"; 39 } 40 41 } 42 echo "<br />"; 43 } 44 45 46 //矩阵运算 减法 47 function juzhen_sub($array1,$b,$array2){ 48 49 $n=count($array1); 50 $c=array(); 51 for ($m=0;$m<$n;$m++){ 52 53 $array2[$m]=0-$array2[$m]; 54 55 } 56 for ($i=0;$i<$n;$i++){ 57 58 $c[$i]=$array1[$i]+$array2[$i]; 59 60 } 61 echo "|"; 62 for ($i=0;$i<$n;$i++){ 63 $j=$i+1; 64 echo $c[$i]; 65 echo " "; 66 if($j%$b==0){ 67 echo "|"; 68 echo "<br />"; 69 if ($i!=($n-1)) 70 echo "|"; 71 } 72 73 } 74 echo "<br />"; 75 } 76 77 78 //矩阵运算 矩阵X矩阵 79 function juzhen_mult_ju($array1,$a,$b,$array2,$d,$e){ 80 $c=array(); 81 if ($b==$d){ 82 83 for ($i=0;$i<$a;$i++){ 84 for ($j=0;$j<$e;$j++){ 85 for ($s=0;$s<=$b;$s++){ 86 $c[$i][$j]=$c[$i][$j]+$array1[$i][$s]*$array2[$s][$j]; 87 } 88 } 89 } 90 91 echo "|"; 92 for ($h=0;$h<$a;$h++){ 93 for ($f=0;$f<$e;$f++){ 94 echo $c[$h][$f]; 95 echo " "; 96 if($f==($e-1)){ 97 echo "|"; 98 echo "<br />"; 99 if ($h!=($a-1)) 100 echo "|"; 101 } 102 103 } 104 } 105 106 } 107 else{ 108 echo "这两个矩阵无法相乘!"; 109 } 110 echo "<br />"; 111 } 112 113 114 115 //矩阵运算 常数X矩阵 116 function juzhen_mult_shu($array1,$b,$d){ 117 118 $n=count($array1); 119 $c=array(); 120 for ($i=0;$i<$n;$i++){ 121 122 $c[$i]=$array1[$i]*$d; 123 124 } 125 echo "|"; 126 for ($i=0;$i<$n;$i++){ 127 $j=$i+1; 128 echo $c[$i]; 129 echo " "; 130 if($j%$b==0){ 131 echo "|"; 132 echo "<br />"; 133 if ($i!=($n-1)) 134 echo "|"; 135 } 136 137 } 138 139 echo "<br />"; 140 } 141 142 143 144 $array1=array(5,15,6,7);//用作二阶行列式 145 $array2=array(5,15,6,7,2,1,5,6,7);//用作三阶行列式 146 $array3=array(100,15,6,35,35,5);//用作3行2列 147 $array4=array(5,5,6,7,50,5);//2行3列或作3行2列来用 148 149 $array5=array 150 ( 151 array(10,1), 152 array(6,3), 153 array(5,7) 154 ); 155 //$array6=array(5,5,6,7,5,5,8,6); 156 $array6=array 157 ( 158 array(5,5,6,7), 159 array(8,9,2,6) 160 ); 161 162 sanjie($array2); 163 erjie($array1); 164 juzhen_plus($array3,2,$array4);//加 165 juzhen_sub($array3,2,$array4);//减 166 juzhen_mult_ju($array5,3,2,$array6,2,4);//乘 167 juzhen_mult_shu($array3,3,3);//乘
运算结果如下:
除法的话,放在下一篇。
上述代码纯属菜鸟练手之作。
在得知更好的方法之前不妨先用最笨的方法试试,加深印象。
哈哈,欢迎吐槽。
转载于:https://www.cnblogs.com/aslmuly/p/11148941.html
菜鸟实现 PHP 二阶、三阶行列式计算和矩阵运算的加、减、乘相关推荐
- 简单计算器 (实数计算 先乘除后加减)
模拟简单运算器的工作.实现加减乘除计算表达式输出正确结果(保留 2 位小数). 输入格式: 输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数.遇等号"="说明输入结束 ...
- python时间相减_python 计算时间差,时间加减运算代码
1.方便的计算两个时间的差,如两个时间相差几天,几小时:import datetime d1 = datetime.datetime(2009, 3, 23) d2 = datetime.dateti ...
- c语言计算多个整数加减,求用C编个大数加减法运算程序
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 只写过加法的,杭电的A + B Problem (II)(AC): #include #include #include #define N 3000 i ...
- 线性代数让我想想:三阶行列式计算优化策略
三阶行列式计算优化策略 一般情况下,我们计算三阶行列式时是按照李永乐老师给的记忆方法(如图所示) 但是,通过这个方法计算还是略微有一点点的麻烦,这时候我们不妨在这个方案的基础上做一点点的修改. 对于下 ...
- R计算数组的累计加和(Cumulative Sums)
R计算数组的累计加和(Cumulative Sums) 目录 R计算数组的累计加和(Cumulative Sums) R中的累加和 可视化R中的累加和
- java 整数加减_Java计算长整数加减(字符串表示)
1 /** 2 * Created by areful on 2019/11/133 */ 4 public classCalcStringNumber {5 private static final ...
- 不用计算实现 图片懒加载
不用计算实现 图片懒加载 给图片加上 data-src 属性 const imgs = document.querySelectorAll("img[data-src]");con ...
- 【oracle】日期加减计算
年计算 -- 下一年/年加1 select sysdate, sysdate+numtoyminterval(1,'year') from dual select sysdate, add_month ...
- 两个多精度十进制数加法程序设计_初中数学之有理数的加减,学会加法,减法即会,掌握技巧轻松计算...
学习了有理数中的相关知识点,关于有理数的加减运算,也是考试中必考的内容,尤其是对于刚进入初中的学生来说,小数的时候学的加减法,到了初中突然发现数字前面有带符号了,其实整体而言,小学时候学的加减运算法则 ...
最新文章
- 【php】 PHP 支持 9 种原始数据类型
- linux大硬盘格式化,linux 格式化大于2T的硬盘
- dotween曲线运动 unity_Unity中DOTween插件的DOTweenPath轨迹移动
- notepadpython插件_Notepad++插件Emmet和Python Script的安装
- 如何基于 DDD 构建微服务?
- linux 运行 dmol3,Dmol3建模及优化
- 音视频开发(24)---H.264视频编码基本知识
- 对老年人友好!滴滴开通打车400热线
- vue 声明周期函数_vue-router路由守卫-上
- Spring-beans-BeanPostProcessor/InitializingBean
- [转]关于频率、模拟角频率、数字角频率
- bat 取得服务列表_临汾进出口经营者备案,查看详情_共勤外贸服务
- js 栈 html标签修复,js 打印错误堆栈
- 2022年 电工杯B题5G 网络环境下 应急物资配送问题
- 香橙派OrangePi Zero开发板的WiFi连接测试
- matlab fft 采样点数,MATLAB中的FFT的采样频率和采样点怎样确定
- sql查询本月数据,当天数据
- 记录一个dell服务器的系统重装
- Oracle数据库块之旅
- 根据卫星仰角和方位角使用html5绘制天空图(投影图)
热门文章
- 单片机开发教程4——多文件编程
- Java实现LDAP认证(上)
- input和textarea设置placeholder属性的颜色、字体大小
- ssm毕设项目高校学生社团管理系统n4pcu(java+VUE+Mybatis+Maven+Mysql+sprnig)
- 苹果 IOS 早期版本 NDEF的读写问题 C#
- 【C++】getchar()有什么用
- Rewrite和RewriteRule规则,http强转https的配置总结
- python beautifulsoup库
- 垂直搜索 vs 通用搜索
- mysql中的unix_timestamp函数