求解MATLAB问题 程序 a=[1 2 3;4 5 6;7 8 9]; b=(a>5); a(b)=(a(b))^2; disp(a); 第三行出错

但程序
a=[1 2 3;4 5 6;7 8 9];
b=(a>5);
a(b)=sqrt(a(b));
disp(a);
运行没有问题,why?

matlab的解释是:
错误使用 ^
输入必须为标量和方阵。
要按元素进行 POWER 计算,请改用 POWER (.^)。

如果要说人话,就是改用“.^”而不用"^"。
温馨提示:答案为网友推荐,仅供参考
相似回答