MATLAB中简单基础问题,求解兄弟们

w1=a^(2/3)
w2=(a^2)^(1/3)
w3=(a^(1/3))^2
a=-8
为什么MATLAB中结果不一样

给出你期望的结果和实际的结果

同学你好,对于负数的非零分数次幂,matlab采用的策略是返回一个复数
所以a^(2/3)和(a^(1/3))^2都是返回复数。
而对于正数的非零分数次幂,matlab默认返回正数。这都是内部规定的