matlab 中在一个语句中连着出现矩阵相乘和矩阵点乘,请问是按先后顺序来计算的还是有特殊优先级的?

问题描述:

matlab 中在一个语句中连着出现矩阵相乘和矩阵点乘,请问是按先后顺序来计算的还是有特殊优先级的?
1个回答 分类:综合 2014-10-15

问题解答:

我来补答
矩阵的相乘是指的A(i,k)*B(k,j) = C(i,j) 对应于高等代数里面规定的矩阵的乘积.
而点乘是指的对应的元素的乘积(维数必须完全相等)
//////这两种乘积在matlab里面 ‘优先级是相同的’
也就是说按先后顺序来计算,要想改变顺序或改变运算可以用添加括号的方式来实现.
再问: 刚开始我也觉得是同级的,但昨天看了一个程序,似乎不是这样的,大哥你这个确定吗?可能是他们的程序有问题。呵呵
再答: 处于同级的运算符优先级是相同的/ 优先级从低到高: 1.先决或(||); 2.先决与(&&); 3.逻辑或(|); 4.逻辑与(&); 5.等于类(=,==,~=); 6.冒号运算(:);7.加减(+,-); 8.乘除类(点乘.*,矩阵乘*,元素左右除.\,/.,矩阵左右除\,/); 9.正负号(+,-); 10.转置类(矩阵转置.',共轭转置',幂次^,矩阵幂次^);
 
 
展开全文阅读
剩余:2000